GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - nextcloud/.github: Nextcloud workflow templates repository

BranchesTags
Open more actions menu

Latest commit

 

History

1,612 Commits
1,612 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
LICENSES
LICENSES
 
 
profile
profile
 
 
screenshots
screenshots
 
 
workflow-templates
workflow-templates
 
 
.editorconfig
.editorconfig
 
 
AGENT_MD_SNIPPETS.md
AGENT_MD_SNIPPETS.md
 
 
AI_POLICY.md
AI_POLICY.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
README.md
README.md
 
 
REUSE.toml
REUSE.toml
 
 
SECURITY.md
SECURITY.md
 
 
non-community-usernames.txt
non-community-usernames.txt
 
 
non-community-usernames.txt.license
non-community-usernames.txt.license
 
 

Repository files navigation

This repository contains Nextcloud's workflow templates

Set up a new template on your repository

When creating a new workflow on your repository, you will see templates originating from here. https://github.com/nextcloud/viewer/actions/new

image

Auto-update in a repository

There is a GitHub action for that as well. Simply install https://github.com/nextcloud/.github/blob/master/workflow-templates/sync-workflow-templates.yml into your repository and a cron job will update the workflows from the template every sunday morning.

Important

GitHub does not allow pull request that touch workflows to be auto-approved and auto-merged to improve security. But it's at least much easier to be aware of the updates and you just need to approve and merge the PRs.

Warning

Do not forget to check the diff for conflicts and missing patches before approving, especially when updating the workflows on stable branches!

Patching workflows

It's also possible to customise workflows by putting a workflow.yml.patch file right next to it. The patch files should be one per workflow and made from the repository root:

Example:

  1. Modify .github/workflows/phpunit-mariadb.yml
  2. Save patch git diff .github/workflows/phpunit-mariadb.yml > .github/workflows/phpunit-mariadb.yml.patch

The sync-workflow-templates.yml action and the organization dispatch workflows (dispatch-workflow.yml, dispatch-workflow-repo.yml and dispatch-workflow-org.yml) also support this and reapply the patches if possible. If there was an error it will be outlined in the PR description and the PR is opened as a draft.

Update workflows manually

You can also run the following shell script on your machine to update all workflows of an app. It should be run inside the cloned repository of an app and requires rsync to be installed.

Warning

Do not forget to check the diff for unwanted changes before committing, especially when updating the workflows on stable branches!

#!/bin/sh

# Update GitHub workflows from the Nextcloud template repository.
# This script is meant to be run from the root of the repository.

# Sanity check
[ ! -d ./.github/workflows/ ] && echo "Error: .github/workflows does not exist" && exit 1

# Clone template repository
temp="$(mktemp -d)"
git clone --depth=1 https://github.com/nextcloud/.github.git "$temp"

# Update workflows
rsync -vr \
    --existing \
    --include='*/' \
    --include='*.yml' \
    --exclude='*' \
    "$temp/workflow-templates/" \
    ./.github/workflows/

# Reapply patches
for patch in ./.github/workflows/*.yml.patch; do
    [ ! -f "$patch" ] && continue
    echo "🩹 Applying $patch"
    if ! patch -p1 < "$patch"; then
        echo "❌ Failed to apply $patch, please resolve manually"
    fi
done

# Cleanup
rm -rf "$temp"

About

Nextcloud workflow templates repository

Resources

Readme

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

26 stars

Watchers

6 watching

Forks

13 forks
Report repository

Releases

Packages

Used by

Contributors

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.