# modified from https://github.com/argenos/nldates-obsidian/blob/master/.github/workflows/release.yml # which is released under MIT License # trigger: # modify manifest.json, package.json, versions.json # git tag # git push origin --tags name: Release A New Version on: push: tags: - "*" # Push events to matching any tag format, i.e. 1.0, 20.15.10 jobs: build: runs-on: ubuntu-latest environment: env-for-buildci env: DROPBOX_APP_KEY: ${{secrets.DROPBOX_APP_KEY}} ONEDRIVE_CLIENT_ID: ${{secrets.ONEDRIVE_CLIENT_ID}} ONEDRIVE_AUTHORITY: ${{secrets.ONEDRIVE_AUTHORITY}} strategy: matrix: node-version: [16.x] steps: - name: Checkout codes uses: actions/checkout@v2 with: submodules: recursive - name: Checkout LFS file list run: git lfs ls-files --long | cut -d ' ' -f1 | sort > .lfs-assets-id - name: LFS Cache uses: actions/cache@v3 with: path: .git/lfs/objects key: ${{ runner.os }}-lfs-${{ hashFiles('.lfs-assets-id') }} restore-keys: | ${{ runner.os }}-lfs- - name: Git LFS Pull run: git lfs pull - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v2 with: node-version: ${{ matrix.node-version }} - run: npm install - run: npm test - run: npm run build - name: Create Release id: create_release uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} VERSION: ${{ github.ref }} with: tag_name: ${{ github.ref }} release_name: ${{ github.ref }} draft: false prerelease: true - name: Upload main.js id: upload-main uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: ./main.js asset_name: main.js asset_content_type: text/javascript - name: Upload manifest.json id: upload-manifest uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: ./manifest.json asset_name: manifest.json asset_content_type: application/json - name: Upload styles.css id: upload-styles uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: ./styles.css asset_name: styles.css asset_content_type: text/css