name: Publish dev on: workflow_dispatch: schedule: - cron: '0 */12 * * *' jobs: npm: name: npm runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v2 - name: Install node.js v16 uses: actions/setup-node@v2 with: node-version: 16 registry-url: https://registry.npmjs.org/ cache: 'yarn' cache-dependency-path: yarn.lock - name: Check previous released version id: pre-release run: | if [[ $(npm view discord.js@dev version | grep -e "$(jq --raw-output '.version' packages/discord.js/package.json).*.$(git rev-parse --short HEAD | cut -b1-3)") ]]; \ then echo '::set-output name=release::false'; \ else echo '::set-output name=release::true'; fi - name: Install dependencies if: steps.pre-release.outputs.release == 'true' run: yarn --immutable - name: Deprecate old versions if: steps.pre-release.outputs.release == 'true' run: npm deprecate discord.js@"~$(jq --raw-output '.version' packages/discord.js/package.json)" "no longer supported" || true env: NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }} - name: Publish if: steps.pre-release.outputs.release == 'true' run: | yarn workspace discord.js version --no-git-tag-version --new-version $(jq --raw-output '.version' packages/discord.js/package.json).$(date +%s).$(git rev-parse --short HEAD) yarn workspace discord.js publish --tag dev || true env: NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }}