Auto: GitHubアクションがNPM_TOKENを見つけられない

作成日 2021年02月22日  ·  6コメント  ·  ソース: intuit/auto

直接公開からnpm(正常に機能しました)から、組織スコープのパッケージ名でGitHubパッケージを使用するように切り替えようとしています。

package.jsonパッケージ名を変更し、必要なpublishConfig追加しました。例:

"publishConfig": {
    "registry": "https://npm.pkg.github.com"
  },

そして、ドキュメントに従ってNPM_TOKEN NODE_AUTH_TOKEN代わりに

 ✔  success   Wrote authentication token string to /home/runner/.npmrc
⚠  warning   Error: Failed to replace env in config: ${NPM_TOKEN}

NPM_TOKENは、GitHubのリポジトリSecretsに設定されています。

アクションの設定は次のとおりです。

name: Publish

on:
  push:
    branches: [main]

jobs:
  release:
    runs-on: ubuntu-latest

    # this check needs to be in place to prevent a publish loop with auto and github actions
    if: "!contains(github.event.head_commit.message, 'ci skip') && !contains(github.event.head_commit.message, 'skip ci')"

    steps:
      - uses: actions/checkout<strong i="19">@v2</strong>
        with:
          # Needed for branch protection override
          token: ${{ secrets.GITHUB_TOKEN }}

      - name: Prepare repository
        run: git fetch --unshallow --tags

      - name: Use Node.js 12.x
        uses: actions/setup-node<strong i="20">@v1</strong>
        with:
          node-version: 12.x

      - name: Cache node modules
        uses: actions/cache<strong i="21">@v2</strong>
        with:
          path: node_modules
          key: node-modules-${{ hashFiles('package-lock.json') }}
          restore-keys: |
            node-modules-${{ hashFiles('package-lock.json') }}

      - name: Create release
        env
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
        run: |
          npm ci
          npm run build
          npm run release
question released

全てのコメント6件

GitHubパッケージレジストリに公開するための追加の手順があります。

NPMに公開していないため、GitHubトークンを使用して公開する必要があります

NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

これは、それが機能している

@hipstersmoothie助けてくれてありがとう。 最初にアクションを設定してからドキュメントが更新されているようですが、まだすべての手順が含まれているわけではないようです。 これらの行をノードのセットアップにも追加する必要がありました(デモリポジトリに記載されています)。

with:
          node-version: 14.x
          registry-url: 'https://npm.pkg.github.com'
          scope: '<strong i="7">@whiteorg</strong>'

NPM_TOKENの警告メッセージもまだ表示されていました。 環境シークレットとしてそれを追加し直すと、それが修正されたようです。

- name: Create release
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

最後に、すべてのセットアップで、PRをマージし、Autoにそれを実行させ、新しいパッケージをリリースし、バージョン/変更ログを更新することができました🎉

しかし、いじりながらブランチ保護を無効にしました。 再度有効にすると、Autoがバージョン更新をコミットしようとするたびに失敗するという新しいエラーが発生しました。 私は、新しい個人用GitHubトークンを追加し、それをデフォルトのGITHUB_SECRETではなく、シークレットとして参照することで、次のように回避しました。

- uses: actions/checkout<strong i="17">@v2</strong>
        with:
          # Needed for branch protection override
          token: ${{ secrets.GH_ADMIN_TOKEN }}

最善の解決策とは思えないので、誰かがより良い解決策を知っているなら、私はそれをいただければ幸いです。 または、ドキュメントをここで更新する必要があると思います: https ://intuit.github.io/auto/docs/build-platforms/github-actions#running -with-branch-protection

私はそれらのドキュメントを改善するためにPRを作成しました。 #1828をレビューしていただけませんか?

レビュー済み、いくつかの小さな提案がありますが、すべて良さそうです☺すべての助けにもう一度感謝します


:rocket:問題はv10.16.8リリースされました:rocket:

このページは役に立ちましたか?
0 / 5 - 0 評価