Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/firstrunwizard.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2021-08-24 00:39:37 +0300
committerGitHub <noreply@github.com>2021-08-24 00:39:37 +0300
commitc60e9630b1bb6eb4f808d7a5109ec8e7ef226244 (patch)
tree98cb6c685f541219f79eb1412b8f6c33197614de /.github
parent379f3f1e783a86b7fae56a6a0bd3112295730c2e (diff)
Create command-compile.yml
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/command-compile.yml117
1 files changed, 117 insertions, 0 deletions
diff --git a/.github/workflows/command-compile.yml b/.github/workflows/command-compile.yml
new file mode 100644
index 00000000..090324e9
--- /dev/null
+++ b/.github/workflows/command-compile.yml
@@ -0,0 +1,117 @@
+name: Compile Command
+on:
+ issue_comment:
+ types: [created]
+
+jobs:
+ init:
+ runs-on: ubuntu-latest
+
+ # On pull requests and if the comment starts with `/compile`
+ if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/compile')
+
+ outputs:
+ git_path: ${{ steps.git-path.outputs.path }}
+ arg1: ${{ steps.command.outputs.arg1 }}
+ arg2: ${{ steps.command.outputs.arg2 }}
+ head_ref: ${{ steps.comment-branch.outputs.head_ref }}
+
+ steps:
+ - name: Check actor permission
+ uses: skjnldsv/check-actor-permission@v2
+ with:
+ require: write
+
+ - name: Add reaction on start
+ uses: peter-evans/create-or-update-comment@v1
+ with:
+ token: ${{ secrets.COMMAND_BOT_PAT }}
+ repository: ${{ github.event.repository.full_name }}
+ comment-id: ${{ github.event.comment.id }}
+ reaction-type: "+1"
+
+ - name: Parse command
+ uses: skjnldsv/parse-command-comment@master
+ id: command
+
+ # Init path depending on which command is run
+ - name: Init path
+ id: git-path
+ run: |
+ if ${{ startsWith(steps.command.outputs.arg1, '/') }}; then
+ echo "::set-output name=path::${{ github.workspace }}${{steps.command.outputs.arg1}}"
+ else
+ echo "::set-output name=path::${{ github.workspace }}${{steps.command.outputs.arg2}}"
+ fi
+
+ - name: Init branch
+ uses: xt0rted/pull-request-comment-branch@v1
+ id: comment-branch
+
+ process:
+ runs-on: ubuntu-latest
+ needs: init
+
+ steps:
+ - name: Checkout ${{ needs.init.outputs.head_ref }}
+ uses: actions/checkout@v2
+ with:
+ token: ${{ secrets.COMMAND_BOT_PAT }}
+ fetch-depth: 0
+ ref: ${{ needs.init.outputs.head_ref }}
+
+ - name: Setup git
+ run: |
+ git config --local user.email "nextcloud-command@users.noreply.github.com"
+ git config --local user.name "nextcloud-command"
+
+ - name: Read package.json node and npm engines version
+ uses: skjnldsv/read-package-engines-version-actions@v1
+ id: package-engines-versions
+ with:
+ fallbackNode: '^12'
+ fallbackNpm: '^6'
+
+ - name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
+ uses: actions/setup-node@v2
+ with:
+ node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
+ cache: npm
+
+ - name: Set up npm ${{ steps.package-engines-versions.outputs.npmVersion }}
+ run: npm i -g npm@"${{ steps.package-engines-versions.outputs.npmVersion }}"
+
+ - name: Install dependencies & build
+ run: |
+ npm ci
+ npm run build --if-present
+
+ - name: Commit and push default
+ if: ${{ needs.init.outputs.arg1 != 'fixup' && needs.init.outputs.arg1 != 'amend' }}
+ run: |
+ git add ${{ needs.init.outputs.git_path }}
+ git commit --signoff -m 'Compile assets'
+ git push origin ${{ needs.init.outputs.head_ref }}
+
+ - name: Commit and push fixup
+ if: ${{ needs.init.outputs.arg1 == 'fixup' }}
+ run: |
+ git add ${{ needs.init.outputs.git_path }}
+ git commit --fixup=HEAD --signoff
+ git push origin ${{ needs.init.outputs.head_ref }}
+
+ - name: Commit and push amend
+ if: ${{ needs.init.outputs.arg1 == 'amend' }}
+ run: |
+ git add ${{ needs.init.outputs.git_path }}
+ git commit --amend --no-edit --signoff
+ git push --force origin ${{ needs.init.outputs.head_ref }}
+
+ - name: Add reaction on failure
+ uses: peter-evans/create-or-update-comment@v1
+ if: failure()
+ with:
+ token: ${{ secrets.COMMAND_BOT_PAT }}
+ repository: ${{ github.event.repository.full_name }}
+ comment-id: ${{ github.event.comment.id }}
+ reaction-type: "-1"