title: GitHub Actions: Error 401 Unauthorized in JIB maven plugin
body: <h2>Introduction</h2>
  <p>I am currently to create a composite GitHub Actions that build a container from Java project with JIB and publish it automatically to a GitHub Packages and Maven Central.</p>
  <h2>Problematic</h2>
  <p>But I got this error when I try to run it:</p>
  <pre><code>[INFO] 
  [INFO] Containerizing application to gcr.io/mathieusoysal/codingame-puzzles-stats-saver:v1.0.2.5...
  Warning:  Base image 'eclipse-temurin:17-jre' does not use a specific image digest - build may not be reproducible
  [INFO] Using credentials from &lt;to&gt;&lt;auth&gt; for gcr.io/mathieusoysal/codingame-puzzles-stats-saver:v1.0.2.5
  [INFO] Getting manifest for base image eclipse-temurin:17-jre...
  [INFO] Building dependencies layer...
  [INFO] Building resources layer...
  [INFO] Building classes layer...
  [INFO] Building jvm arg files layer...
  [INFO] The base image requires auth. Trying again for eclipse-temurin:17-jre...
  [INFO] Using credentials from Docker config (/home/runner/.docker/config.json) for eclipse-temurin:17-jre
  [INFO] Using base image with digest: sha256:e7a4a45b88525250e668cc6149b95b3952a8e9cba8c341b70c4d34c4e4d5eed5
  [INFO] 
  [INFO] ------------------------------------------------------------------------
  [INFO] BUILD FAILURE
  [INFO] ------------------------------------------------------------------------
  [INFO] Total time:  10.272 s
  [INFO] Finished at: 2022-02-09T00:37:22Z
  [INFO] ------------------------------------------------------------------------
  Error:  Failed to execute goal com.google.cloud.tools:jib-maven-plugin:3.2.0:build (default-cli) on project codingame-puzzles-stats-saver: Build image failed, perhaps you should make sure your credentials for 'gcr.io/mathieusoysal/codingame-puzzles-stats-saver' are set up correctly. See https://github.com/GoogleContainerTools/jib/blob/master/docs/faq.md#what-should-i-do-when-the-registry-responds-with-unauthorized for help: Unauthorized for gcr.io/mathieusoysal/codingame-puzzles-stats-saver: 401 Unauthorized
  Error:  {&quot;errors&quot;:[{&quot;code&quot;:&quot;UNAUTHORIZED&quot;,&quot;message&quot;:&quot;Not Authorized.&quot;}]}
  Error:  -&gt; [Help 1]
  Error:  
  Error:  To see the full stack trace of the errors, re-run Maven with the -e switch.
  Error:  Re-run Maven using the -X switch to enable full debug logging.
  Error:  
  Error:  For more information about the errors and possible solutions, please read the following articles:
  Error:  [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
  Error: Process completed with exit code 1.
  </code></pre>
  <h2>Affected code:</h2>
  <pre class="lang-yaml prettyprint-override"><code>name: JIB container publish
  description: &quot;Build automatically container with JIB and publish it to GitHub Packages.&quot;
  branding:
    icon: &quot;package&quot;
    color: &quot;gray-dark&quot;
  
  inputs:
    # Use docker.io for Docker Hub if empty
    REGISTRY:
      description: &quot;Registry of the image to publish&quot;
      required: true
      default: ghcr.io
    # github.repository as &lt;account&gt;/&lt;repo&gt;
    IMAGE_NAME:
      description: &quot;Name of the image to publish&quot;
      required: true
      default: ${{ github.repository }}
    # Username to login to registry
    USERNAME:
      description: &quot;Username to login to registry&quot;
      required: true
      default: ${{ github.actor }}
    # Password to login to registry
    PASSWORD:
      description: &quot;Password to login to registry&quot;
      required: true
    # Name of the tag to publish
    tag-name:
      description: &quot;Tag name of the image to publish&quot;
      required: true
      default: &quot;latest&quot;
    # Java version to use
    java-version:
      description: &quot;Java version to use&quot;
      required: true
      default: &quot;17&quot;
  
  runs:
    using: &quot;composite&quot;
    steps:
      - id: downcase
        uses: ASzc/change-string-case-action@v2
        with:
          string: ${{ inputs.IMAGE_NAME }}
  
      - uses: actions/checkout@v2
      - name: Set up JDK 17
        uses: actions/setup-java@v2
        with:
          distribution: &quot;adopt&quot;
          java-version: ${{ inputs.java-version }}
  
      - name: Buil JIB container and publish to GitHub Packages
        run: |
          mvn compile com.google.cloud.tools:jib-maven-plugin:3.2.0:build \
          -Djib.to.image=${{ inputs.REGISTRY }}/${{ steps.downcase.outputs.lowercase }}:${{ inputs.tag-name }} \
          -Djib.to.auth.username=${{ inputs.USERNAME }} \
          -Djib.to.auth.password=${{ inputs.PASSWORD }}
        shell: bash
  </code></pre>
  <h2>Code that execute the GitHub Actions in question:</h2>
  <pre class="lang-yaml prettyprint-override"><code>name: Deploy Javadoc
  
  on:
  name: JIB container publish
  
  on:
    release:
      types: [created]
  
  jobs:
    publish:
      runs-on: ubuntu-latest
      steps:
        - name: JIB container build and publish
          uses: MathieuSoysal/jib-container-publish.yml@v2.0.7
          with:
            # Use docker.io for Docker Hub if empty
            REGISTRY: gcr.io
            # github.repository as &lt;your-account&gt;/&lt;your-repo&gt;
            IMAGE_NAME: ${{ github.repository }}
            # Tag name of the image to publish
            tag-name: ${{ github.event.release.tag_name }}
            # Username to login to registry
            USERNAME: ${{ github.actor }}
            # Password to login to registry
            PASSWORD: ${{ secrets.GITHUB_TOKEN }}
            java-version: 17
  </code></pre>
  <h2>Question</h2>
  <p>Anyone have an idea to solve this problem?</p>
  <p>Link of the repo: <a href="https://github.com/MathieuSoysal/jib-container-publish.yml" rel="nofollow noreferrer">https://github.com/MathieuSoysal/jib-container-publish.yml</a></p>