Dorian Zedler
9c0508c2c3
All checks were successful
continuous-integration/drone/push Build is passing
60 lines
1.5 KiB
Markdown
60 lines
1.5 KiB
Markdown
A plugin to deploy to codeberg pages. Basically takes a folder and pushes it to the "pages" branch in the same repo..
|
|
|
|
# Usage
|
|
|
|
The following settings changes this plugin's behavior.
|
|
|
|
* folder (required) the folder to deploy.
|
|
* ssh_key (required) the ssh key to access the repo.
|
|
* git_remote (optional) the git repote to push to. Default: `$DRONE_GIT_SSH_URL`
|
|
* git_branch (optional) the branch to push to. Default: `pages`
|
|
|
|
Below is an example `.drone.yml` that uses this plugin.
|
|
|
|
```yaml
|
|
kind: pipeline
|
|
name: default
|
|
|
|
steps:
|
|
- name: run itsblue.dev/plugins/codeberg-pages-deploy plugin
|
|
image: itsblue.dev/plugins/codeberg-pages-deploy
|
|
pull: if-not-exists
|
|
settings:
|
|
folder: public
|
|
ssh_key: foo
|
|
git_remote: git@somegit.com/foo/bar
|
|
git_branch: pages
|
|
```
|
|
|
|
# Building
|
|
|
|
Build the plugin binary:
|
|
|
|
```text
|
|
scripts/build.sh
|
|
```
|
|
|
|
Build the plugin image:
|
|
|
|
```text
|
|
docker build -t itsblue.dev/plugins/codeberg-pages-deploy -f docker/Dockerfile .
|
|
```
|
|
|
|
# Testing
|
|
|
|
Execute the plugin from your current working directory:
|
|
|
|
```text
|
|
docker run --rm -e PLUGIN_FOLDER=public -e PLUGIN_SSH_KEY=foo \
|
|
-e DRONE_COMMIT_SHA=8f51ad7884c5eb69c11d260a31da7a745e6b78e2 \
|
|
-e DRONE_COMMIT_BRANCH=master \
|
|
-e DRONE_BUILD_NUMBER=43 \
|
|
-e DRONE_BUILD_STATUS=success \
|
|
-e PLUGIN_FOLDER=public \
|
|
-e PLUGIN_SSH_KEY="-----BEGIN OPENSSH PRIVATE KEY-----\n....." \
|
|
-e PLUGIN_GIT_REMOTE=git@somegit.com/foo/bar \
|
|
-e PLUGIN_GIT_BRANCH=pages \
|
|
-w /drone/src \
|
|
-v $(pwd):/drone/src \
|
|
itsblue.dev/plugins/codeberg-pages-deploy
|
|
```
|