diff --git a/.github/pr-labeler.yml b/.github/pr-labeler.yml new file mode 100644 index 000000000..077cc568b --- /dev/null +++ b/.github/pr-labeler.yml @@ -0,0 +1,3 @@ +'Type: Bug / Error': 'bug/*' +'Type: Enhancement': 'feature/*' +'Type: Other': 'other/*' diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml new file mode 100644 index 000000000..be3c858b1 --- /dev/null +++ b/.github/release-drafter.yml @@ -0,0 +1,19 @@ +name-template: '$NEXT_PATCH_VERSION' +tag-template: '$NEXT_PATCH_VERSION' +categories: + - title: '🚀 Features' + labels: + - 'Type: Enhancement' + - title: '🐛 Bug Fixes' + labels: + - 'Type: Bug / Error' + - title: '🧰 Maintenance' + label: 'Type: Other' +change-template: '- $TITLE (#$NUMBER) @$AUTHOR' +no-changes-template: 'This release contains minor changes and bugfixes.' +template: | + # Release Notes + + $CHANGES + + 🎉 **Thanks to all contributors helping with this release!** 🎉 diff --git a/.github/workflows/pr-labeler.yml b/.github/workflows/pr-labeler.yml new file mode 100644 index 000000000..b6fab95ce --- /dev/null +++ b/.github/workflows/pr-labeler.yml @@ -0,0 +1,13 @@ +name: Apply labels to PR +on: + pull_request: + types: [opened] + +jobs: + pr-labeler: + runs-on: ubuntu-latest + steps: + - name: Label PR + uses: TimonVS/pr-labeler-action@v3 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/release-draft.yml b/.github/workflows/release-draft.yml new file mode 100644 index 000000000..68be3a1e5 --- /dev/null +++ b/.github/workflows/release-draft.yml @@ -0,0 +1,15 @@ +name: Draft Release + +on: + push: + branches: + - develop + +jobs: + draft-release: + runs-on: ubuntu-latest + steps: + - name: Draft Release + uses: toolmantim/release-drafter@v5.2.0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/release-preview-publish.yml b/.github/workflows/release-preview-publish.yml index b6c29b6a3..e7d5b994c 100644 --- a/.github/workflows/release-preview-publish.yml +++ b/.github/workflows/release-preview-publish.yml @@ -8,15 +8,12 @@ on: jobs: publish: runs-on: ubuntu-latest - strategy: - matrix: - node-version: [10.x] steps: - uses: actions/checkout@v1 - - name: Setup Node.js ${{ matrix.node-version }} + - name: Setup Node.js uses: actions/setup-node@v1 with: - node-version: ${{ matrix.node-version }} + node-version: 10.x - name: Install Yarn run: npm i yarn --global @@ -24,7 +21,7 @@ jobs: run: npm i json --global - name: Install Packages - run: yarn install + run: yarn install --frozen-lockfile - name: Publish run: | diff --git a/.github/workflows/release-publish.yml b/.github/workflows/release-publish.yml new file mode 100644 index 000000000..0f8227359 --- /dev/null +++ b/.github/workflows/release-publish.yml @@ -0,0 +1,46 @@ +name: Publish release + +on: + release: + types: [published] + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - uses: fregante/setup-git-token@v1 + with: + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Setup Node.js + uses: actions/setup-node@v1 + with: + node-version: 10.x + - name: Install Yarn + run: npm i yarn --global + + - name: Install Json + run: npm i json --global + + - name: Install Packages + run: yarn install --frozen-lockfile + + - name: Prepare release + run: | + VERSION=${GITHUB_REF:10} + echo "Preparing release $VERSION" + git checkout -t origin/release/$VERSION + npm version --no-git-tag-version --allow-same-version $VERSION + git add package.json + git commit -m "Bump version $VERSION" + git checkout -t origin/master + git merge -m "Release $VERSION" --no-ff release/$VERSION + git push --no-verify + + - name: Publish + run: | + npm set //registry.npmjs.org/:_authToken $NPM_TOKEN + npm publish + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }}