Skip to content
battery-charging

GitHub Action

GitHub Organization Sync(er)

0.5.4 Latest version

GitHub Organization Sync(er)

battery-charging

GitHub Organization Sync(er)

A GitHub Action to sync files across repositories

Installation

Copy and paste the following snippet into your .yml file.

              

- name: GitHub Organization Sync(er)

uses: hostwithquantum/github-org-sync-action@0.5.4

Learn more about this action in hostwithquantum/github-org-sync-action

Choose a version

ci release

github-org-sync(-action)

github-org-sync(-action) is a tool to sync files from a skeleton/template repository to other repositories in your organization. It works within a single organization, but of course it can be used multiple times.

It currently syncs .github/workflows — more is planned.

Inspiration from:

You're super excited and need to see how it works?

https://github.com/hostwithquantum/github-org-sync-action/actions?query=workflow%3Async

GitHub Action

This Action is meant to run on a schedule, see the "sync" workflow (.github/workflows/sync.yml) in this repository for a minimal demo/working example.

Inputs

github-user

Required Name of the user to commit files and open PRs.

github-email

Required Email of the user to commit files and open PRs.

github-access-token

Required An access token (used for clone and push), scope repo.

github-org

Required Your Github organization. Default: hostwithquantum

github-skeleton

Required The base repository to sync files from. Default: ansible-skeleton.

github-repos

Required A (space-delimited) list of repositories to sync to. Default: "ansible-weave"

Standalone

If GitHub Actions are not applicable to your environment, you may run the tool without (and e.g. via cron.d).

Getting it

All releases are done using the amazing goreleaser in a release workflow in this repository. The workflow validates and builds binaries for different OS' and architectures and a Docker image (amd64) as well.

Installing

You may download a release for Mac, Linux or Windows here:

To use the Docker image, please follow one of these links:

Otherwise: make dev to build a snapshot.

Configuration

  • github-org-sync uses environment variables. There is nothing else currently.
  • See .envrc-dist for necessary configuration.
  • Please note that, GITHUB_ACCESS_TOKEN requires full repo scope, in order to create branches, push them and open pull-requests.

Author

Planetary Quantum GmbH — come check us out. 🚀 :)

License

BSD-2-Clause ("Simplified BSD License")