diff options
| author | ckonstanski <carlos.konstanski@olo.com> | 2021-11-26 14:25:33 -0700 |
|---|---|---|
| committer | ckonstanski <carlos.konstanski@olo.com> | 2021-11-26 14:25:33 -0700 |
| commit | c8d4ddcf04709616afbb3b8921692a182b8dfbf2 (patch) | |
| tree | 7480f6b5b63832e368c29322e2f6ec604071f45f | |
initial commit
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | example.ini | 13 | ||||
| -rw-r--r-- | requirements.txt | 1 | ||||
| -rwxr-xr-x | run.sh | 10 | ||||
| -rw-r--r-- | yaml/ckons.local/deploy.yaml | 39 | ||||
| -rw-r--r-- | yaml/ckons.local/docker-container.yaml | 32 |
6 files changed, 96 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d09f385 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +ckons.local.ini diff --git a/example.ini b/example.ini new file mode 100644 index 0000000..d87a962 --- /dev/null +++ b/example.ini @@ -0,0 +1,13 @@ +[job_builder] +ignore_cache=True +keep_descriptions=False +include_path=.:scripts:~/git/ +recursive=False +exclude=.*:manual:./development +allow_duplicates=False + +[jenkins] +user=my_username +password=my_jenkins_api_key +url=http://jenkins.tld/ +query_plugins_info=False diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..1d847f4 --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +jenkins-job-builder>=2.0.0.0b2 @@ -0,0 +1,10 @@ +#!/bin/bash + +site="${1}" + +# for mac/homebrew +virtualenv venv || pyenv virtualenv -p python3.9 venv +. venv/bin/activate +venv/bin/pip install --upgrade -r requirements.txt +jenkins-jobs --conf "${site}.ini" update --delete-old "yaml/${site}" +exit 0 diff --git a/yaml/ckons.local/deploy.yaml b/yaml/ckons.local/deploy.yaml new file mode 100644 index 0000000..5c814ca --- /dev/null +++ b/yaml/ckons.local/deploy.yaml @@ -0,0 +1,39 @@ +--- +- project: + name: "deploy" + jobs: + - "{app}-deploy-{target}": + app: "wro" + node: "ansible" + deploy_script: "deploy-target.sh" + target: "sphinkpad" + installer_url: "git@ns:repos/wro-installer.git" + - "{app}-deploy-{target}": + app: "wro" + node: "ansible" + deploy_script: "deploy-target.sh" + target: "ns" + installer_url: "git@ns:repos/wro-installer.git" + +- job-template: + name: "{app}-deploy-{target}" + project-type: freestyle + node: "{node}" + properties: + - build-discarder: + num-to-keep: 1 + artifact-days-to-keep: 0 + - build-blocker: + use-build-blocker: true + blocking-jobs: + - "docker-container.*" + block_level: "GLOBAL" + queue-scanning: "BUILDABLE" + scm: + - git: + url: "{installer_url}" + branches: + - master + builders: + - shell: | + ./{deploy_script} {target} diff --git a/yaml/ckons.local/docker-container.yaml b/yaml/ckons.local/docker-container.yaml new file mode 100644 index 0000000..d2f810d --- /dev/null +++ b/yaml/ckons.local/docker-container.yaml @@ -0,0 +1,32 @@ +--- +- project: + name: "docker-container" + jobs: + - "docker-container-{container}": + container: "gentoo-baseimage" + ci_url: "git@ns:repos/gentoo-baseimage-ci.git" + installer_url: "" + - "docker-container-{container}": + container: "wro" + ci_url: "git@ns:repos/wro-ci.git" + installer_url: "git@ns:repos/wro-installer.git" + +- job-template: + name: "docker-container-{container}" + project-type: freestyle + node: docker + properties: + - build-discarder: + num-to-keep: 1 + artifact-days-to-keep: 0 + triggers: + - pollscm: + cron: "0 0 1 1 0" + scm: + - git: + url: "{ci_url}" + branches: + - master + builders: + - shell: | + ./build-docker-containers.sh {installer_url} |
