diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..2c64e2196 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,39 @@ +name: Release +on: + workflow_run: + workflows: ["Lint & Unit Test"] + branches: [master] + types: + - completed + +permissions: + contents: read # for checkout + +jobs: + release: + if: ${{ github.event.workflow_run.conclusion == 'success' }} + name: Release + runs-on: ubuntu-latest + permissions: + contents: write # to be able to publish a GitHub release + issues: write # to be able to comment on released issues + pull-requests: write # to be able to comment on released pull requests + id-token: write # to enable use of OIDC for npm provenance + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: "lts/*" # semantic-release requires Node >= 18 + - name: Install dependencies + run: npm clean-install + - name: Verify the integrity of provenance attestations and registry signatures for installed dependencies + run: npm audit signatures + - name: Release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + run: npm install -g @semantic-release/changelog @semantic-release/git semantic-release && semantic-release && echo release success diff --git a/.npmignore b/.npmignore index f342d6304..4577b0a50 100644 --- a/.npmignore +++ b/.npmignore @@ -29,3 +29,4 @@ docs .travis.yml karma.sauce.conf.js .github +.releaserc diff --git a/.releaserc b/.releaserc new file mode 100644 index 000000000..8c9fced18 --- /dev/null +++ b/.releaserc @@ -0,0 +1,16 @@ +{ + "branches": ["master"], + "prepare": [ + { + "path": "@semantic-release/changelog" + }, + [ + "@semantic-release/git", + { + "assets": [ + "CHANGELOG.md" + ] + } + ] + ] +} diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 2b17216d5..000000000 --- a/.travis.yml +++ /dev/null @@ -1,23 +0,0 @@ -language: node_js -cache: - directories: - - ~/.npm - - node_modules -node_js: - - '16' - - '14' - - '12' -install: - - npm install -g codecov - - npm install -script: - - npm run lint - - npm test - - codecov -after_success: - - if [ "$TRAVIS_BRANCH" == "master" ] && [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then - npx travis-deploy-once --pro && npm run build && npm run babel && npm install -g @semantic-release/changelog @semantic-release/git semantic-release && semantic-release && echo release success && curl ${TriggerUrl} && npm run test:sauce; - fi -branches: - only: - - master diff --git a/package.json b/package.json index 44b293c48..c76e01780 100644 --- a/package.json +++ b/package.json @@ -36,21 +36,6 @@ "src/**/*" ] }, - "release": { - "prepare": [ - { - "path": "@semantic-release/changelog" - }, - [ - "@semantic-release/git", - { - "assets": [ - "CHANGELOG.md" - ] - } - ] - ] - }, "keywords": [ "dayjs", "date",