From b8da11b97557bc8c9d49a495ed2d76dc4381d9d0 Mon Sep 17 00:00:00 2001 From: Nikolay Kharitonov Date: Tue, 5 Dec 2023 18:00:49 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=91=B7=20github=20actions=20build?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/npm.yml | 53 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 .github/workflows/npm.yml diff --git a/.github/workflows/npm.yml b/.github/workflows/npm.yml new file mode 100644 index 0000000..ccb490f --- /dev/null +++ b/.github/workflows/npm.yml @@ -0,0 +1,53 @@ +name: Build npm package +on: + push: + branches: + - '**' +jobs: + build: + if: contains(github.event.head_commit.message, '๐Ÿ”–') + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + steps: + - name: โคต๏ธ Checkout + uses: actions/checkout@v3 + # Setup .npmrc file to use GitHub Packages + - name: ๐Ÿ”จ Setup node (github registry) + uses: actions/setup-node@v3 + with: + node-version: '10.x' + registry-url: 'https://npm.pkg.github.com' + # Defaults to the user or organization that owns the workflow file + scope: '@screeps' + - name: ๐Ÿ‘ท Install + run: npm ci + env: + NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: ๐Ÿ“ฆ๏ธ Publish package (github registry) + if: github.ref_name == 'master' + run: npm publish + env: + NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: ๐Ÿ“ฆ๏ธ Publish tagged package (github registry) + if: github.ref_name != 'master' + run: npm publish --tag ${{ github.ref_name }} + env: + NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: ๐Ÿ”จ Setup node (npmjs) + uses: actions/setup-node@v3 + with: + node-version: '10.x' + registry-url: 'https://registry.npmjs.org' + scope: '@screeps' + - name: ๐Ÿ“ฆ๏ธ Publish package (npmjs) + if: github.ref_name == 'master' + run: npm publish + env: + NODE_AUTH_TOKEN: ${{ secrets.NPMJS_TOKEN }} + - name: ๐Ÿ“ฆ๏ธ Publish tagged package (npmjs) + if: github.ref_name != 'master' + run: npm publish --tag ${{ github.ref_name }} + env: + NODE_AUTH_TOKEN: ${{ secrets.NPMJS_TOKEN }}