summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlbonn <lbonn@users.noreply.github.com>2019-07-23 12:48:22 +0200
committerGitHub <noreply@github.com>2019-07-23 12:48:22 +0200
commit7530d93ebb97b519a12b88d121320ac0bb711c46 (patch)
treec308d046b3e2c1d6cfbc55c83fd01f1c7abe66cf
parent311e5199c4f7cb73e393d751fede4ed86d358c02 (diff)
parent82308b9f8f1509d77330e70e162a1b066ad85e34 (diff)
downloadmeta-updater-7530d93ebb97b519a12b88d121320ac0bb711c46.tar.gz
Output site.conf during CI configure step (#560)
Output site.conf during CI configure step
-rw-r--r--scripts/ci/Jenkinsfile.bleeding87
-rw-r--r--scripts/ci/Jenkinsfile.bleeding-selftest91
-rw-r--r--scripts/ci/README.adoc14
-rwxr-xr-xscripts/ci/configure.sh3
-rw-r--r--scripts/ci/gitlab/docker.yml8
5 files changed, 7 insertions, 196 deletions
diff --git a/scripts/ci/Jenkinsfile.bleeding b/scripts/ci/Jenkinsfile.bleeding
deleted file mode 100644
index 6d340fd..0000000
--- a/scripts/ci/Jenkinsfile.bleeding
+++ /dev/null
@@ -1,87 +0,0 @@
1// This CI setup checks out aktualizr, meta-updater and updater-repo and builds
2// master branches whenever a change is pushed to any of these
3
4// define these for docker image creation
5node {
6 // might cause some problems:
7 // https://stackoverflow.com/questions/44805076/setting-build-args-for-dockerfile-agent-using-a-jenkins-declarative-pipeline
8 JENKINS_UID = sh(returnStdout: true, script: 'id -u').trim()
9 JENKINS_GID = sh(returnStdout: true, script: 'id -g').trim()
10}
11
12pipeline {
13 agent any
14 environment {
15 TEST_AKTUALIZR_REMOTE = 'aktualizr'
16 TEST_AKTUALIZR_DIR = 'aktualizr'
17 TEST_AKTUALIZR_BRANCH = 'master'
18 TEST_BITBAKE_COMMON_DIR = "/opt/jenkins/bitbake-common"
19 }
20 stages {
21 stage('checkout') {
22 steps {
23
24 checkout([$class: 'GitSCM',
25 userRemoteConfigs: [
26 [url: 'https://github.com/advancedtelematic/aktualizr', name: 'aktualizr']
27 ],
28 branches: [[name: 'refs/heads/master']],
29 extensions: [
30 [$class: 'DisableRemotePoll'],
31 [$class: 'PruneStaleBranch'],
32 [$class: 'RelativeTargetDirectory',
33 relativeTargetDir: 'aktualizr'
34 ]
35 ],
36 ])
37
38 checkout([$class: 'RepoScm',
39 manifestRepositoryUrl: 'https://github.com/advancedtelematic/updater-repo',
40 manifestBranch: null,
41 manifestFile: 'master.xml',
42 manifestGroup: null,
43 mirrorDir: null,
44 jobs: 0,
45 depth: 0,
46 localManifest: null,
47 destinationDir: 'updater-repo',
48 repoUrl: null,
49 currentBranch: false,
50 resetFirst: true,
51 quiet: false,
52 trace: false,
53 showAllChanges: false,
54 ])
55
56 // ignore bitbake build directories in docker
57 sh 'echo \'build*\' > .dockerignore'
58
59 // override meta-updater commit with currently tested branch
60 sh '''
61 META_UPDATER_COMMIT=$(git rev-parse HEAD)
62 cd updater-repo/meta-updater
63 git checkout $META_UPDATER_COMMIT
64 '''
65 }
66 }
67 stage('build-core-image-minimal') {
68 agent {
69 dockerfile {
70 filename 'scripts/ci/Dockerfile.bitbake'
71 args '-v /opt/jenkins/bitbake-common:/opt/jenkins/bitbake-common'
72 additionalBuildArgs "--build-arg uid=${JENKINS_UID} --build-arg gid=${JENKINS_GID}"
73 reuseNode true
74 }
75 }
76 environment {
77 TEST_AKTUALIZR_CREDENTIALS = credentials('garage-credentials')
78 }
79 steps {
80 sh 'scripts/ci/configure.sh'
81
82 sh 'scripts/ci/build.sh core-image-minimal'
83 }
84 }
85 }
86}
87// vim: set ft=groovy tabstop=2 shiftwidth=2 expandtab:
diff --git a/scripts/ci/Jenkinsfile.bleeding-selftest b/scripts/ci/Jenkinsfile.bleeding-selftest
deleted file mode 100644
index 8c2d1de..0000000
--- a/scripts/ci/Jenkinsfile.bleeding-selftest
+++ /dev/null
@@ -1,91 +0,0 @@
1// This CI setup checks out aktualizr, meta-updater and updater-repo and builds
2// master branches whenever a change is pushed to any of these
3
4// define these for docker image creation
5node {
6 // might cause some problems:
7 // https://stackoverflow.com/questions/44805076/setting-build-args-for-dockerfile-agent-using-a-jenkins-declarative-pipeline
8 JENKINS_UID = sh(returnStdout: true, script: 'id -u').trim()
9 JENKINS_GID = sh(returnStdout: true, script: 'id -g').trim()
10}
11
12pipeline {
13 agent {
14 node { label 'bitbake' }
15 }
16 environment {
17 TEST_AKTUALIZR_REMOTE = 'aktualizr'
18 TEST_AKTUALIZR_DIR = 'aktualizr'
19 TEST_AKTUALIZR_BRANCH = 'master'
20 TEST_BITBAKE_COMMON_DIR = "/opt/jenkins/bitbake-common"
21 }
22 stages {
23 stage('checkout') {
24 steps {
25
26 checkout([$class: 'GitSCM',
27 userRemoteConfigs: [
28 [url: 'https://github.com/advancedtelematic/aktualizr', name: 'aktualizr']
29 ],
30 branches: [[name: 'refs/heads/master']],
31 extensions: [
32 [$class: 'DisableRemotePoll'],
33 [$class: 'PruneStaleBranch'],
34 [$class: 'RelativeTargetDirectory',
35 relativeTargetDir: 'aktualizr'
36 ]
37 ],
38 ])
39
40 checkout([$class: 'RepoScm',
41 manifestRepositoryUrl: 'https://github.com/advancedtelematic/updater-repo',
42 manifestBranch: null,
43 manifestFile: 'master.xml',
44 manifestGroup: null,
45 mirrorDir: null,
46 jobs: 0,
47 depth: 0,
48 localManifest: null,
49 destinationDir: 'updater-repo',
50 repoUrl: null,
51 currentBranch: false,
52 resetFirst: true,
53 quiet: false,
54 trace: false,
55 showAllChanges: false,
56 ])
57
58 // ignore bitbake build directories in docker
59 sh 'echo \'build*\' > .dockerignore'
60
61 // override meta-updater commit with currently tested branch
62 sh '''
63 META_UPDATER_COMMIT=$(git rev-parse HEAD)
64 cd updater-repo/meta-updater
65 git checkout $META_UPDATER_COMMIT
66 '''
67 }
68 }
69 stage('build-core-image-minimal+oe-selftest') {
70 agent {
71 dockerfile {
72 filename 'scripts/ci/Dockerfile.bitbake'
73 args '-v /opt/jenkins/bitbake-common:/opt/jenkins/bitbake-common'
74 additionalBuildArgs "--build-arg uid=${JENKINS_UID} --build-arg gid=${JENKINS_GID}"
75 reuseNode true
76 }
77 }
78 environment {
79 TEST_AKTUALIZR_CREDENTIALS = credentials('garage-credentials')
80 }
81 steps {
82 sh 'scripts/ci/configure.sh'
83
84 sh 'scripts/ci/build.sh core-image-minimal'
85
86 sh 'scripts/ci/oe-selftest.sh'
87 }
88 }
89 }
90}
91// vim: set ft=groovy tabstop=2 shiftwidth=2 expandtab:
diff --git a/scripts/ci/README.adoc b/scripts/ci/README.adoc
deleted file mode 100644
index 222982b..0000000
--- a/scripts/ci/README.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
1= Jenkins setup for running meta-updater CI
2
3As bitbake is quite resource-hungry, there are some special steps that are
4needed to run Jenkins CI tasks:
5
6- docker should be installed and the `jenkins` unix user should belong to
7 the `docker` group
8- `/opt/jenkins` should exist and have `jenkins:jenkins` permissions, it
9 will be mapped as a volume on the same location in the docker build
10 container
11
12Note that for nodes running Jenkins slaves as a docker container, the
13`/opt/jenkins` directory must exist on the host system as well, with
14permissions matching the user and groupd ids in Jenkins' docker
diff --git a/scripts/ci/configure.sh b/scripts/ci/configure.sh
index a8968da..67563ed 100755
--- a/scripts/ci/configure.sh
+++ b/scripts/ci/configure.sh
@@ -69,3 +69,6 @@ SSTATE_DIR = "$SSTATE_DIR"
69DL_DIR = "$DL_DIR" 69DL_DIR = "$DL_DIR"
70EOF 70EOF
71fi 71fi
72
73echo -e ">> Final configuration (site.conf):\n"
74cat "$SITE_CONF"
diff --git a/scripts/ci/gitlab/docker.yml b/scripts/ci/gitlab/docker.yml
index 827bb47..5b81d77 100644
--- a/scripts/ci/gitlab/docker.yml
+++ b/scripts/ci/gitlab/docker.yml
@@ -6,10 +6,10 @@
6 # - BITBAKE_CHECKOUT_IMAGE 6 # - BITBAKE_CHECKOUT_IMAGE
7 # - BITBKAE_IMAGE_MASTER 7 # - BITBKAE_IMAGE_MASTER
8 # - BITBAKE_CHECKOUT_IMAGE_MASTER 8 # - BITBAKE_CHECKOUT_IMAGE_MASTER
9 image: docker:stable 9 image: docker:18
10 stage: docker 10 stage: docker
11 services: 11 services:
12 - docker:dind 12 - docker:18-dind
13 before_script: 13 before_script:
14 - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY" 14 - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY"
15 script: 15 script:
@@ -26,10 +26,10 @@
26 # parameters: 26 # parameters:
27 # - BITBAKE_IMAGE 27 # - BITBAKE_IMAGE
28 # - BITBAKE_CHECKOUT_IMAGE 28 # - BITBAKE_CHECKOUT_IMAGE
29 image: docker:stable 29 image: docker:18
30 stage: docker 30 stage: docker
31 services: 31 services:
32 - docker:dind 32 - docker:18-dind
33 before_script: 33 before_script:
34 - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY" 34 - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY"
35 script: 35 script: