Skip to content

ci: production deploy #380

ci: production deploy

ci: production deploy #380

Workflow file for this run

name: NPM Publish
on:
push:
branches: [ master ]
permissions:
contents: write
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: false
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install node
uses: actions/setup-node@v4
with:
node-version: 22.x
- uses: ./.github/actions/codecheck
test-vue2:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install node
uses: actions/setup-node@v4
with:
node-version: 20.x
- uses: ./.github/actions/test
with:
type: vue2
test-vue3:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install node
uses: actions/setup-node@v4
with:
node-version: 22.x
- uses: ./.github/actions/test
with:
type: vue3
test-nuxt2:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install node
uses: actions/setup-node@v4
with:
node-version: 20.x
- uses: ./.github/actions/test
with:
type: nuxt2
test-nuxt3:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install node
uses: actions/setup-node@v4
with:
node-version: 22.x
- uses: ./.github/actions/test
with:
type: nuxt3
docs-build:
name: Docs build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: install node
uses: actions/setup-node@v4
with:
node-version: 22.x
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Build main package
run: |
yarn
yarn build
- name: Build with VitePress
run: |
yarn docs:build
touch docs/.vitepress/dist/.nojekyll
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: docs/.vitepress/dist
npm-publish:
name: NPM Publish
needs:
- check
- test-vue2
- test-vue3
- test-nuxt2
- test-nuxt3
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- run: yarn
- run: yarn lint && yarn build
- uses: JS-DevTools/npm-publish@v3
with:
token: ${{ secrets.NPM_TOKEN }}
package: ./packages/vue-yandex-maps
provenance: true
#tag: next
github-release:
name: Release tag to Github
needs: npm-publish
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Get Tag Name
id: tagName
uses: beaconbrigade/package-json-version@v0.3
with:
path: ./packages/vue-yandex-maps
- name: Extract release notes
id: extract-release-notes
uses: ffurrer2/extract-release-notes@v2
- name: Create Release
uses: softprops/action-gh-release@v2
with:
target_commitish: master
token: ${{ secrets.GITHUB_TOKEN }}
tag_name: ${{ steps.tagName.outputs.version }}
name: ${{ steps.release.outputs.title }}
body: ${{ steps.extract-release-notes.outputs.release_notes }}
#prerelease: true
docs-deploy:
name: Docs Deploy
continue-on-error: true
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: docs-build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4