Skip to content

Commit

Permalink
Update workflow files
Browse files Browse the repository at this point in the history
  • Loading branch information
PKief committed Nov 18, 2023
1 parent 783311a commit d5912bb
Show file tree
Hide file tree
Showing 5 changed files with 108 additions and 3 deletions.
7 changes: 6 additions & 1 deletion .github/workflows/build.yml
Expand Up @@ -14,17 +14,21 @@ jobs:

steps:
- name: Checkout πŸ›Ž
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup Node.js ${{ matrix.node-version }} βš™
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}

- name: Run display server πŸ–₯
run: /usr/bin/Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & echo "Started xvfb"
shell: bash
if: ${{ success() && matrix.os == 'ubuntu-latest' }}

- name: Install node_modules πŸ“¦
run: npm ci

- name: Cache node_modules πŸ’Ύ
uses: actions/cache@v3
env:
Expand All @@ -37,6 +41,7 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Test + Build πŸš€
run: |
npm test
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/color-check.yml
Expand Up @@ -13,9 +13,10 @@ jobs:
TARGET_BRANCH: ${{ github.event.pull_request.base.ref }}
steps:
- name: Checkout πŸ›ŽοΈ
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Check colors 🎨
run: |
svgFiles=$(git diff origin/${{ env.TARGET_BRANCH }} --diff-filter=ACMRTUX --name-only | grep '.svg$')
Expand Down
63 changes: 63 additions & 0 deletions .github/workflows/icon-review.yml
@@ -0,0 +1,63 @@
name: Icon Review

on:
pull_request_target:
paths:
- 'icons/*.svg'

jobs:
icon-review:
name: Icon Review
runs-on: ubuntu-latest
env:
TARGET_BRANCH: ${{ github.event.pull_request.base.ref }}
steps:
- name: Checkout Fork πŸ›ŽοΈ
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.ref }}
repository: ${{ github.event.pull_request.head.repo.full_name }}
fetch-depth: 0
path: fork

- name: Checkout Original πŸ›ŽοΈ
uses: actions/checkout@v4
with:
fetch-depth: 0
path: main

- name: Review SVG files πŸ”
run: |
cd main
svgFiles=$(git diff --no-index ../main ../fork --diff-filter=ACMRTUX --name-only | grep '.svg$')
echo "SVG files changed: ${svgFiles}"
npx svg-icon-review ${svgFiles}
- name: Install jq βš™οΈ
run: sudo apt-get install jq

- name: Upload PNG ⬆️
env:
IMAGE_UPLOAD: ${{ secrets.IMAGE_UPLOAD }}
id: upload
run: |
IMAGE_URL=$(curl --location 'https://freeimage.host/json' --form 'source=@"./main/preview.png"' --form 'type="file"' --form 'action="upload"' --form 'auth_token="${{env.IMAGE_UPLOAD}}"' | jq -r '.image.url')
echo image_url=$IMAGE_URL >> $GITHUB_ENV
shell: bash

- name: Post review in PR ✍️
uses: actions/github-script@v7
with:
script: |
const image_url = "${{ env.image_url }}";
console.log('URL: '+image_url);
const commentBody = '## Preview \n\nThank you for creating a pull request. This preview shows you how your changes will look on the different themes: \n\n ![Generated Preview](' + image_url + ') \n\n You can find more information how to contribute in the [contribution guidelines](https://github.com/PKief/vscode-material-icon-theme/blob/main/CONTRIBUTING.md).';
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: commentBody
})
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
26 changes: 26 additions & 0 deletions .github/workflows/pr-closed.yml
@@ -0,0 +1,26 @@
name: PR closed

on:
pull_request_target:
types:
- closed

jobs:
thank_you:
runs-on: ubuntu-latest
if: github.event.pull_request.merged == true
steps:
- name: Post Thank You Comment πŸ™
uses: actions/github-script@v7
with:
script: |
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `## Merge Successful
Thanks for your contribution! πŸŽ‰
The changes will be part of the upcoming update on the marketplace.`
})
12 changes: 11 additions & 1 deletion .github/workflows/release.yml
Expand Up @@ -19,24 +19,28 @@ jobs:
VERSION_CHANGE: ${{ github.event.inputs.versionChange }}
steps:
- name: Checkout πŸ›ŽοΈ
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Setup Node.js βš™οΈ
uses: actions/setup-node@v3
with:
node-version: 'lts/*'
registry-url: 'https://registry.npmjs.org'

- name: Install node_modules πŸ“¦
run: |
npm ci
npm install --global @vscode/vsce
- name: Update version β†—
run: |
git config --global user.name 'Philipp Kief'
git config --global user.email 'PKief@users.noreply.github.com'
git config --global push.followTags true
npm version ${{ env.VERSION_CHANGE }} -m "Release %s"
- name: Get meta data πŸ”
run: |
NODE_VERSION=$(node -p -e "require('./package.json').version")
Expand All @@ -45,28 +49,34 @@ jobs:
echo NAME=$NODE_NAME >> $GITHUB_ENV
NODE_DISPLAY_NAME=$(node -p -e "require('./package.json').displayName")
echo DISPLAY_NAME=$NODE_DISPLAY_NAME >> $GITHUB_ENV
- name: Build βš’οΈ
run: vsce package

- name: Push tags πŸ“Œ
run: git push

- name: Release ${{ env.VERSION }} πŸ”†
uses: softprops/action-gh-release@v1
with:
files: ${{ env.NAME }}-${{ env.VERSION }}.vsix
tag_name: v${{ env.VERSION }}
name: ${{ env.DISPLAY_NAME }} v${{ env.VERSION }}
generate_release_notes: true

- name: Publish to Open VSX Registry 🌐
uses: HaaLeo/publish-vscode-extension@v1
with:
pat: ${{ secrets.OPEN_VSX_TOKEN }}
extensionFile: ${{ env.NAME }}-${{ env.VERSION }}.vsix

- name: Publish to Visual Studio Marketplace 🌐
uses: HaaLeo/publish-vscode-extension@v1
with:
pat: ${{ secrets.VS_MARKETPLACE_TOKEN }}
registryUrl: https://marketplace.visualstudio.com
extensionFile: ${{ env.NAME }}-${{ env.VERSION }}.vsix

- name: Publish to NPM Registry 🌐
run: npm publish
env:
Expand Down

0 comments on commit d5912bb

Please sign in to comment.