You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
77 lines
1.7 KiB
77 lines
1.7 KiB
name: Deploying |
|
|
|
on: |
|
push: |
|
branches: |
|
- master |
|
|
|
jobs: |
|
build: |
|
name: Build |
|
runs-on: ubuntu-latest |
|
|
|
steps: |
|
- name: Checkout code |
|
uses: actions/checkout@v3 |
|
|
|
- name: Install Node.js |
|
uses: actions/setup-node@v3 |
|
with: |
|
node-version: 18 |
|
cache: 'yarn' |
|
|
|
- name: Install Yarn packages |
|
run: yarn install |
|
|
|
- name: Build project |
|
run: yarn build |
|
|
|
- name: Upload production-ready build files |
|
uses: actions/upload-artifact@v3 |
|
with: |
|
name: production-files |
|
path: ./dist |
|
|
|
release: |
|
name: Release |
|
needs: build |
|
runs-on: ubuntu-latest |
|
|
|
steps: |
|
- name: Checkout code |
|
uses: actions/checkout@v3 |
|
|
|
- name: Download artifact |
|
uses: actions/download-artifact@v3 |
|
with: |
|
name: production-files |
|
path: ./dist |
|
|
|
- name: Zip files |
|
run: cd dist && zip -r ../movie-web.zip . |
|
|
|
- name: Get version |
|
id: package-version |
|
uses: martinbeentjes/npm-get-version-action@main |
|
|
|
- name: Create Release |
|
id: create_release |
|
uses: actions/create-release@v1 |
|
env: |
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
|
with: |
|
tag_name: ${{ steps.package-version.outputs.current-version }} |
|
release_name: Movie web v${{ steps.package-version.outputs.current-version }} |
|
draft: false |
|
prerelease: false |
|
|
|
- name: Upload Release Asset |
|
id: upload-release-asset |
|
uses: actions/upload-release-asset@v1 |
|
env: |
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
|
with: |
|
upload_url: ${{ steps.create_release.outputs.upload_url }} |
|
asset_path: ./movie-web.zip |
|
asset_name: movie-web.zip |
|
asset_content_type: application/zip
|
|
|