From fa4a65843539e1a171a448ba03cfdebc6d3a2211 Mon Sep 17 00:00:00 2001 From: Michal Kovarik Date: Jul 03 2020 09:08:34 +0000 Subject: Allow to define external git for role definition Allow to set external git repository with c3i role definition. This is improving testing and allows separation c3i from main code. --- diff --git a/roles/c3i/defaults/main.yml b/roles/c3i/defaults/main.yml index 93e8f54..6f331e5 100644 --- a/roles/c3i/defaults/main.yml +++ b/roles/c3i/defaults/main.yml @@ -44,6 +44,9 @@ c3i_mail_address: # list of flags in semaphore to allow prod promotion c3i_semaphore_custom_flags: [] +# Git repo with c3i_definition, can be empty then c3i_git_repo is used +c3i_definition_git: +c3i_definition_git_branch: master c3i_definition_dir: openshift/pipelines c3i_definition_update_script: ansible-playbook deploy.yml -e c3i_skip_service_accounts=true diff --git a/roles/c3i/templates/build-workflow/job-updater.groovy b/roles/c3i/templates/build-workflow/job-updater.groovy index e28da48..db251b6 100644 --- a/roles/c3i/templates/build-workflow/job-updater.groovy +++ b/roles/c3i/templates/build-workflow/job-updater.groovy @@ -4,7 +4,14 @@ stage('Update pipeline jobs') { steps { script { - dir("{{ c3i_definition_dir }}") { + def git_dir = "" + if ("{{ c3i_definition_git }}" != "") { + git_dir = 'c3i-definition/' + dir(git_dir) { + c3i.clone(repo: "{{ c3i_definition_git }}", branch: "{{ c3i_definition_git_branch }}") + } + } + dir("${git_dir}{{ c3i_definition_dir }}") { sh '{{ c3i_definition_update_script }}' } } // script diff --git a/setup/install-jenkins b/setup/install-jenkins index 3488b00..c3ed16a 100755 --- a/setup/install-jenkins +++ b/setup/install-jenkins @@ -24,6 +24,12 @@ oc import-image jenkins:2 --confirm --scheduled=true \ PLUGINS=$(curl https://raw.githubusercontent.com/openshift/jenkins/master/2/contrib/openshift/base-plugins.txt | grep -v "#" |grep -v '^$' | sed 's/:.*/:latest/') PLUGINS=$(echo -e "$PLUGINS\n$(cat jenkins-plugins.txt)" | sort -u | tr '\n' ',') +# replace problematic plugins +PLUGINS=$(echo $PLUGINS | sed 's/docker-commons:latest/docker-commons:1.16/') +PLUGINS=$(echo $PLUGINS | sed 's/kubernetes:latest/kubernetes:1.19.3/') +PLUGINS=$(echo $PLUGINS | sed 's/antisamy-markup-formatter:latest/antisamy-markup-formatter:1.6/') + + oc create configmap openshift-jenkins-login-plugin-config --from-literal Overall-Administer=view oc new-app --file=jenkins-template.yml \ diff --git a/setup/jenkins-plugins.txt b/setup/jenkins-plugins.txt index 1bfe11c..f418ec5 100644 --- a/setup/jenkins-plugins.txt +++ b/setup/jenkins-plugins.txt @@ -4,6 +4,5 @@ http_request:latest antisamy-markup-formatter:latest update-sites-manager:latest jms-messaging:latest -configuration-as-code:latest rebuild:latest gerrit-trigger:latest