diff options
-rw-r--r-- | scripts/ci/Jenkinsfile.bleeding | 4 | ||||
-rw-r--r-- | scripts/ci/Jenkinsfile.bleeding-selftest | 89 |
2 files changed, 90 insertions, 3 deletions
diff --git a/scripts/ci/Jenkinsfile.bleeding b/scripts/ci/Jenkinsfile.bleeding index e50b4b6..6d340fd 100644 --- a/scripts/ci/Jenkinsfile.bleeding +++ b/scripts/ci/Jenkinsfile.bleeding | |||
@@ -64,7 +64,7 @@ pipeline { | |||
64 | ''' | 64 | ''' |
65 | } | 65 | } |
66 | } | 66 | } |
67 | stage('build-core-image-minimal+oe-selftest') { | 67 | stage('build-core-image-minimal') { |
68 | agent { | 68 | agent { |
69 | dockerfile { | 69 | dockerfile { |
70 | filename 'scripts/ci/Dockerfile.bitbake' | 70 | filename 'scripts/ci/Dockerfile.bitbake' |
@@ -80,8 +80,6 @@ pipeline { | |||
80 | sh 'scripts/ci/configure.sh' | 80 | sh 'scripts/ci/configure.sh' |
81 | 81 | ||
82 | sh 'scripts/ci/build.sh core-image-minimal' | 82 | sh 'scripts/ci/build.sh core-image-minimal' |
83 | |||
84 | sh 'scripts/ci/oe-selftest.sh' | ||
85 | } | 83 | } |
86 | } | 84 | } |
87 | } | 85 | } |
diff --git a/scripts/ci/Jenkinsfile.bleeding-selftest b/scripts/ci/Jenkinsfile.bleeding-selftest new file mode 100644 index 0000000..e50b4b6 --- /dev/null +++ b/scripts/ci/Jenkinsfile.bleeding-selftest | |||
@@ -0,0 +1,89 @@ | |||
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 | ||
5 | node { | ||
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 | |||
12 | pipeline { | ||
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+oe-selftest') { | ||
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 | sh 'scripts/ci/oe-selftest.sh' | ||
85 | } | ||
86 | } | ||
87 | } | ||
88 | } | ||
89 | // vim: set ft=groovy tabstop=2 shiftwidth=2 expandtab: | ||