glab(1) glab(1) NAME glab-artifact-registry-login - Authenticate a package manager against the GitLab Artifact Registry. (EXPERIMENTAL) SYNOPSIS glab artifact-registry login [flags] DESCRIPTION Configure a package manager to authenticate against the GitLab Artifact Registry, using a short-lived access token exchanged from your GitLab session. Use the flag for your package manager: o --docker: registers glab as a Docker credential helper for the registry. o --maven: writes a block in ~/.m2/settings.xml, keyed by --registry-alias. Reference it from a carrying the same . o --gradle: writes {alias}Url, {alias}Username, and {alias}Password in ~/.gradle/gradle.properties, where {alias} is --registry-alias. o --npm: writes a //{host}{path}/:_authToken entry in ~/.npmrc. You still need to point npm at the registry, with a registry= or @scope:registry= line. o --sbt: writes a credentials += line in ~/.sbt/1.0/credentials.sbt, which assumes a stock sbt 1.x. An sbt that moved its global base, with -Dsbt.global.base or a newer default, does not read that file. Token lifetime: o --docker exchanges a fresh token on every pull or push, so --duration does not apply. o Every other flag writes one token, and nothing refreshes it. Run the command again before --duration elapses. The default is 15 minutes and the maximum is 12 hours. Credential resolution: o Docker runs the credential helper as its own subprocess, which reads your credentials from the configuration file and ignores GITLAB_TOKEN. This command verifies the login the same way, so run glab auth login first if no token is stored for the host. o Every other flag does read GITLAB_TOKEN. glab writes the token into each file itself, so the tool can read it without fetching credentials itself. Registry and alias selection: o Use --registry only for a registry the Artifact Registry actually backs. If you name a container registry here, it receives the wrong token and the error only surfaces on the next pull. o --registry-alias applies to --maven and --gradle only, because --npm and --sbt key their entries on --registry itself. For --gradle, use an alias that is a valid identifier in your build script: the default is derived from the registry host and contains hyphens, which Groovy cannot interpolate as ${...}. This feature is an experiment and is not ready for production use. It might be unstable or removed at any time. For more information, see https://docs.gitlab.com/policy/development_stages_support/. OPTIONS --docker[=false] Configure Docker to authenticate against the registry. Writes to $DOCKER_CONFIG, or ~/.docker when it is unset. --duration=15m0s How long the exchanged token should remain valid. Ignored for --docker. --gradle[=false] Configure Gradle to authenticate against the registry. Writes to ~/.gradle/gradle.properties. --hostname="" GitLab hostname to request the token from. Defaults to the configured GitLab instance. --maven[=false] Configure Maven to authenticate against the registry. Writes to ~/.m2/settings.xml. --npm[=false] Configure npm to authenticate against the registry. Writes to ~/.npmrc. --registry="" Registry to authenticate against. For --docker, a bare hostname; for others, typically a URL. --registry-alias="" Alias/ID to register the registry under (Maven/Gradle only). Defaults to a name derived from --registry. --sbt[=false] Configure sbt to authenticate against the registry. Writes to ~/.sbt/1.0/credentials.sbt. OPTIONS INHERITED FROM PARENT COMMANDS -h, --help[=false] Show help for this command. EXAMPLE # Configure Docker to authenticate against a registry glab artifact-registry login --docker --registry registry.example.com # Configure Maven to authenticate against a registry for two hours glab artifact-registry login --maven --registry https://ar.example.com --duration 2h # Configure Gradle to authenticate against a registry for two hours glab artifact-registry login --gradle --registry https://ar.example.com --duration 2h # Configure npm to authenticate against a registry for two hours glab artifact-registry login --npm --registry https://ar.example.com --duration 2h # Configure sbt to authenticate against a registry for two hours glab artifact-registry login --sbt --registry https://ar.example.com --duration 2h SEE ALSO glab-artifact-registry(1) Auto generated by spf13/cobra Sep 2026 glab(1)