summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
Commit message (Collapse)AuthorAgeFilesLines
* Update buildstream.conf to enable pushingHEADpedro/reenable-pushmasterPedro Alvarez2018-07-261-1/+2
|
* WORKAROUND: limit the number of fetchers to 1Francisco Redondo Marchena2018-06-281-0/+3
| | | | | | | | There is a bug in buildstream when we are fetching the same thing multiple times https://gitlab.com/BuildStream/buildstream/issues/5 There is an issue in the pipelines when we are fetching delta/linux to build different packages for different jobs, so this will limit to fetch this package maximum of 12 times at the same time.
* Update buildstream to 1.1.3franred/point-to-Update-buildstream-1.1.3Francisco Redondo Marchena2018-06-041-2/+2
| | | | | | | | | | Set up/Hard code STAGE2_SYSROOT to the root directory instead of calculating it depending on the current directory because buildstream has changed the default value of "build-root" directory and this was causing issues in the stage2 packages. See https://gitlab.com/BuildStream/buildstream/issues/414 for more information. Bump also the SHA of bst-external to fcd1fc365d0250bffe02937c89dcc31d11c299cf
* Use new version of bst-external when testingsam/bst-1.0.0jjardon/testSam Thursfield2018-02-231-1/+1
| | | | | This doesn't fix anything we specifically need, but it's good to keep on top of upstream changes.
* Update to build with BuildStream 1.0.1Sam Thursfield2018-02-231-1/+1
| | | | | | | | | | | | | We were previously building with an old 0.x version. This requires a fix to how we import the 'x86image' plugin from the bst-external plugins repo. It also requires a couple of fixes to elements which need to add things to the CMake configure commandline. These should use the new 'cmake-local' variable rather than overriding the configure-commands as a whole; the builds of these elements were breaking because the default commands changed upstream to expect out-of-tree builds.
* .gitlab-ci.yml: Only build one converted system, use the current bst ↵jjardon/buildstream_transitionJavier Jardón2017-12-121-25/+22
| | | | definition for the rest
* CI: keep conversion of the last commit with definition in YBD formatJavier Jardón2017-12-121-0/+4
|
* .gitlab-ci.yml: Remove YBD and old format systems from the CIJavier Jardón2017-12-111-133/+0
| | | | Keep the conversion though
* .gitlab-ci.yml: Add image deployment test for BuildStreamsam/minimal-vm-imagemorphsSam Thursfield2017-12-061-12/+36
| | | | | Drumroll... we actually boot the VM in QEMU, run a command, and check its output is sane.
* Update to latest BuildStreamSam Thursfield2017-11-271-9/+8
| | | | | This version changes how artifact caches are specified, so the project.conf file needs updating too.
* .gitlab-ci.tml: Remove weston-qt system from CIjjardon/ci_remove_systemsJavier Jardón2017-11-271-36/+0
| | | | The component on it are already build in the IVI system
* .gitlab-ci.yml: Remove genivi-baseline-system-x86_64-generic from the CIJavier Jardón2017-11-271-9/+0
| | | | The components on it are already build in the GDP system
* .gitlab-ci.yml: Remove -devel systems from the ciJavier Jardón2017-11-261-17/+0
| | | | They are not really used/maintained
* .gitlab-ci.yml: Move bst-build-minimal-system to build-1 stageJavier Jardón2017-11-261-1/+1
| | | | So we build the same systems in build-1 for ybd and buildstream
* .gitlab-ci.yml: Remove build-3 stage to save timeJavier Jardón2017-11-261-9/+8
|
* Actually use specific versions of YBD and BuildStreamsam/ci-fixSam Thursfield2017-11-101-19/+21
| | | | | | | | | | | | | The approach from commit 56885a36e5c3830a6c6c7a663730a8a297a5825c was neater, but it doesn't work due to this GitLab issue: https://gitlab.com/gitlab-org/gitlab-ce/issues/20615 I can't see any way to make this work apart from putting the SHA1s into the job before_script sections directly. I moved them upwards to make it more obvious. Of course once we stop using YBD we can clean this up nicely.
* .gitlab-ci.yml: Update defs2bst versionsam/buildstream-1.0Sam Thursfield2017-11-051-1/+1
| | | | | This version uses %{arch} instead of %{bst-arch}, and uses list composition operations instead of pre- and post- commands.
* .gitlab-ci.yml: Use specific version of ybd, spec, defs2bstjjardon/no_master2Javier Jardón2017-10-261-2/+8
| | | | Current master of all those
* .gitlab-ci.yml: Use specific version of BuildStream instead current masterJavier Jardón2017-10-261-4/+4
|
* Revert "Remove BuildStream update task"Javier Jardón2017-10-261-0/+8
| | | | | | | | We do want to control what version of BuildStream are we using in the CI, not as part as the image; an update can break the build and the same commit that built today can break tomorrow This reverts commit 3de7f8086cfc89e11ffdf88651ab415e661e2609.
* .gitlab-ci.yml: Make the cache a hidden directorySam Thursfield2017-10-251-5/+7
| | | | | | | | | | | | YBD scans the current working directory for definition files, which is problematic now that we store hundreds of cached Git repos and OSTree repos in a subdir of the definitions repo. To avoid wasting loads of time calling stat() on tens of thousands of directories, the cache is now in a hidden directory. This depends on a change to YBD that causes it to efficiently ignore hidden directories: https://gitlab.com/baserock/ybd/commit/6676c4ac0
* Pull in ybd gits cache for bst-convert jobBen Brown2017-10-251-0/+1
|
* .gitlab-ci.yml: Fix BuildStream artifact cache configurationSam Thursfield2017-10-231-2/+2
| | | | This is hopefully what has been preventing BuildStream from pushing.
* .gitlab-ci.yml: Point the cache to the correct gits locationJavier Jardón2017-10-171-2/+2
|
* Remove ybd cache to ensure buildstream tasks have enough disk spaceBen Brown2017-10-171-0/+3
|
* Remove '];' from closing of if statementBen Brown2017-10-131-1/+1
|
* Remove BuildStream update taskBen Brown2017-10-131-8/+0
| | | | | Removing since the docker image contains an installation of BuildStream and is updated nightly (as pointed out by Sam).
* Use pull policy for deploy stagesBen Brown2017-10-131-2/+12
| | | | | By default GitLab CI fetches and re-pushes cache, given deploy stages won't cause the git repos to change, only fetch.
* Disable fetching of artifacts from previous stagesBen Brown2017-10-131-0/+40
| | | | | By default, GitLab CI fetches the artifacts of all previous stages. Be explicit about which artifacts we do and don't want.
* Separate ybd and bst remote cachesBen Brown2017-10-131-7/+42
|
* Store YBD_base in /cacheBen Brown2017-10-131-1/+1
| | | | | Should we pick up the same runner in another job, artifacts will be reused from this path.
* Use templates for setup scriptsBen Brown2017-10-131-48/+79
| | | | Allows us to only perform the tasks required for each tool.
* .gitlab-ci.yml: Use CI_PROJECT_DIR instead of $(pwd)Sam Thursfield2017-10-041-8/+6
|
* .gitlab-ci.yml: Fix caching, part threeSam Thursfield2017-10-041-10/+12
| | | | | | | | | With the previous attempt, storing files in the cache worked OK but restoring from the cache did not. The symlink workaround wasn't enough as the symlink gets created /after/ the cache is restored. Now the whole /builds tree is on a separate Docker volume, so we should be able to really store the cache inside the build directory.
* .gitlab-ci.yml: Really enable caching of downloaded sourcesSam Thursfield2017-10-041-5/+9
| | | | | | | | | | It turns out that downloaded sources have never been shared between builds. Each container running a build has a `/cache` volume, but a new volume is created for each container so nothing is shared. We listed certain paths inside `/cache` to be saved by GitLab CI between runs using the "distributed runners cache" feature, but because the paths were outside the build directory it would just ignore them.
* .gitlab-ci.yml: Remove LANG and LC_ALLSam Thursfield2017-10-041-4/+0
| | | | | These are still needed, but are set correctly in the Docker image now so we don't need to repeat them here.
* .gitlab-ci.yml: Share buildstream source cache between jobsSam Thursfield2017-10-031-0/+1
| | | | This should give a massive performance improvement.
* project.conf: Set the artifact cache URL heresam/bst-artifacts-urlSam Thursfield2017-09-201-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is possible since this change: https://gitlab.com/BuildStream/buildstream/commit/00e08459c4 Older versions of BuildStream will fail to parse the project.conf file with this change; I think it's acceptable to force everyone to update as we are still in the development stage of the BuildStream migration. If you want to override the configuration for whatever reason you'll now need to put this in your ~/.config/buildstream.conf file: projects: baserock: artifacts: pull-url: ... push-url: ... If you set a "global" artifacts configuration by doing this... artifacts: pull-url: ... ... it'll be ignored because the project-specific config from this project.conf file will take precedence. Overriding seems to be done for the whole config block, so if you only set push-url in your buildstream.conf file it will be interpreted to mean "set push-url, and unset pull-url" rather than "set push-url and use the existing value of pull-url."
* Retry on transient fetch errorsbenbrown/get-source-errorsBen Brown2017-09-071-0/+1
| | | | | | | | | | | In order to bypass: Cloning repository... Cloning into '/builds/gitlab/omnibus-gitlab'... error: RPC failed; curl 56 SSL read: error:00000000:lib(0):func(0):reason(0), errno 104 fatal: The remote end hung up unexpectedly fatal: early EOF fatal: index-pack failed
* Continue build on missing keybenbrown/no-key-errorBen Brown2017-09-061-7/+11
| | | | | We don't want to error out here, otherwise builds will only pass on protected branches.
* .gitlab-ci.yml: Avoid pulling artifacts for every BuildStream buildSam Thursfield2017-08-291-15/+15
| | | | | | | | | | | We shouldn't download artifacts to the CI workers every time somebody pushes just to throw them away again. This should speed up no-op builds. The functionality is implemented in two shell scripts. Context is here: https://gitlab.com/BuildStream/buildstream/issues/77 It would be possible to do this with a single script, but I wanted to avoid doing any argument parsing code in shell.
* .gitlab-ci.yml: Use the official BuildStream Docker imageSam Thursfield2017-08-291-1/+1
| | | | | | This is a Fedora 26 image which has BuildStream's dependencies pre-installed, which saves us waiting to `dnf install` everything at the start of every CI job.
* Automate conversion and testing using GitLab CISam Thursfield2017-08-251-27/+169
|
* .gitlab-ci.yml: Use gitlab cache to store git reposjjardon/cacheJavier Jardón2017-07-241-0/+5
|
* .gitlab-ci.yml: Always run the full CI to avoid confusion when accepting MRjjardon/always_run_CIJavier Jardón2017-07-061-36/+0
|
* Use /cache to put all contentsstaging/jjardon/revert_gcc71Javier Jardón2017-07-061-0/+3
| | | | | | | | | | | This is how a runner looks like: $ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/docker-252:1-262208-36eaa91b86966a7afa39fbdbe717bdec58bc10efc52e09accd3e8e9ee4038658 10G 144M 9.9G 2% / tmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/vda1 79G 1.2G 75G 2% /cache shm 64M 0 64M 0% /dev/shm
* .gitlab-ci.yml: Add deploy step for the build- systemstaging/jjardon/deployJavier Jardón2017-02-081-13/+13
| | | | | This way we can offer an up-to-date rootfs of a build system that can be used in a chroot to build another systems
* .gitlab-ci.yml: Use debian:stretch docker image instead python:2.7-slimstaging/jjardon/change_docker_imageJavier Jardón2017-01-291-2/+2
| | | | | | python:2.7-slim install python in /usr/local/bin instead /usr/bin, which is making deployment extensions to fail as they expect python to be in /usr/bin/python
* Validation CIjjardon/deployDaniel Firth2016-12-121-0/+8
|
* Add shortcut for checking ybd branches.Daniel Firth2016-12-121-1/+2
| | | | Branches that follow the pattern "staging/fromybd/$1" will `git checkout ybd -b $1`