Skip to content

feat(deps): update all dependencies. fixes #50 #22

feat(deps): update all dependencies. fixes #50

feat(deps): update all dependencies. fixes #50 #22

Workflow file for this run

name: Release Extensions
on:
push:
tags:
- "*"
jobs:
release:
runs-on: ubuntu-latest
# Gives access to the VSCE_PAT, OVSX_TOKEN secret
environment: vsce
permissions:
# Allows creation of releases
contents: write
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Setup
uses: ./.github/actions/setup
with:
kind: release
secret: ${{ secrets.GITHUB_TOKEN }}
- name: Install VSCode NPM Packages
working-directory: vscode
run: npm install
- name: Package VSCode Extension
working-directory: vscode
run: npm run package
- name: Publish to VSCode Marketplace
working-directory: vscode
run: npm run publish:vsce
env:
VSCE_PAT: ${{ secrets.VSCE_PAT }}
- name: Publish to OpenVSX
working-directory: vscode
run: npm run publish:ovsx
env:
OPENVSX_PAT: ${{ secrets.OVSX_TOKEN }}
- name: Package Sublime Text Package
working-directory: sublime-text
run: zip pest.sublime-package *
- name: Publish to crates.io
working-directory: language-server
run: cargo publish --token ${{ secrets.CRATES_TOKEN }}
- name: Get Changelog
id: get_changelog
run: |
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64)
echo "COMMITS<<$EOF" >> $GITHUB_OUTPUT
echo "COMMITS=\"$(awk -v latest="$(grep -Eo '^## v[0-9]+\.[0-9]+\.[0-9]+$' CHANGELOG.md | head -n1)" '/^## v/ {if (header) exit; header=1} /^## v'${latest}'/{print; next} header && !/^## v/{print}' CHANGELOG.md)\"" >> $GITHUB_OUTPUT
echo "$EOF" >> $GITHUB_OUTPUT
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body: |
# Checklist Before Publishing
- [ ] Check VSCode extension was published correctly.
- [ ] Check crates.io release was published correctly.
- [ ] Check artifacts were uploaded to this release.
- [ ] Update release body.
${{ steps.get_changelog.outputs.COMMITS }}
draft: true
prerelease: false
- uses: xresloader/upload-to-github-release@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
file: "vscode/pest.vsix;sublime-text/pest.sublime-package"
release_id: ${{ steps.create_release.outputs.id }}
overwrite: true