Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/at-wat/assets-sync-action
GitHub Action to deploy asset files to multiple repositories.
https://github.com/at-wat/assets-sync-action
deployment github-action
Last synced: 3 months ago
JSON representation
GitHub Action to deploy asset files to multiple repositories.
- Host: GitHub
- URL: https://github.com/at-wat/assets-sync-action
- Owner: at-wat
- License: apache-2.0
- Created: 2020-01-04T03:34:06.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-05-22T19:01:06.000Z (8 months ago)
- Last Synced: 2024-10-14T12:34:02.513Z (4 months ago)
- Topics: deployment, github-action
- Language: Shell
- Size: 33.2 KB
- Stars: 7
- Watchers: 3
- Forks: 2
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# assets-sync-action
GitHub Action to deploy asset files to multiple repositories.
## Inputs
- repos
- Space separated list of target repository slugs. (required)
- github_token
- GitHub personal access token with write permission to the repos. Use encrypted secrets. (required)
- git_user
- User name of commit author. (required)
- git_email
- E-mail address of commit author. (required)
- commit_message
- Commit message of generated commits. Defaults to
Update assets to %v
. (%v
: version tag string) - branch
- Branch name to which the changes are committed. Defaults to
sync-assets-%v
. (%v
: version tag string) - root_dir
- Root directory of the assets for this job. Defaults to
root
. - rm
- Files to be removed.
- dryrun
- Set true to run the job without pushing.
- exclude_paths
- Space separated list of excluded path globs.
## Directory structure
The repository using assets-sync-action must have `./root` directory.
Files in the `./root` will be deployed to the target repositories keeping its directory structure.
```
.
├── .github
│ └── workflows
│ └── assets-sync.yml (see example section)
└── root
├── dir
│ └── another-file-to-be-deployed
└── file-to-be-deployed
```
## Example
Deploy the files by adding `v0.0.0` style tag.
```yaml
name: assets-sync
on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
jobs:
sync:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v2
- name: sync
uses: at-wat/assets-sync-action@v0
with:
repos: @@owner/repo1@@ @@owner/repo2@@
git_user: @@MAINTAINER_NAME@@
git_email: @@MAINTAINER_EMAIL_ADDRESS@@
github_token: ${{ secrets.GITHUB_TOKEN_REPO }}
```
See https://github.com/at-wat/.rospkg-assets for the working example.