Newer
Older
schrodinger / .github / workflows / node.js.yml
@biosfood biosfood on 25 Dec 2022 1 KB create release for new commits
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs

name: Node.js CI

on:
  push:
    branches: [ "master" ]
  pull_request:
    branches: [ "master" ]

jobs:
  build:

    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [16.x]

    steps:
    - uses: actions/checkout@v3
    - name: setup npm
      uses: actions/setup-node@v3
      with:
        node-version: 16.17.0
        cache: 'npm'
    - name: load libaries
      run: npm ci
    - name: build article files
      run: npm run build
    - name: create zip
      run: (cd build && zip -r ../article.zip .)
    - name: Create Release
      id: create_release
      uses: actions/create-release@v1
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      with:
        tag_name: ${{ github.ref }}
        release_name: Release ${{ github.ref }}
        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: ./article.zip
        asset_name: article.zip
        asset_content_type: application/zip