mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-12-25 15:58:08 +00:00
40 lines
1.6 KiB
YAML
40 lines
1.6 KiB
YAML
# Connected with creating the testing image for CI.
|
|
|
|
# Environment job builds the `ci/Dockerfile` and pushes the built docker image
|
|
# into our GitLab registry. Since modifications of this Dockerfile are very rare
|
|
# this is a _manual_ job which needs to be triggered on GitLab.
|
|
# Almost all CI jobs run inside this docker image.
|
|
.environment:
|
|
stage: environment
|
|
image: docker
|
|
variables:
|
|
GIT_SUBMODULE_STRATEGY: none # no need to fetch submodules
|
|
CONTAINER_NAME: "$CI_REGISTRY/satoshilabs/trezor/trezor-firmware/trezor-firmware-env.nix"
|
|
ALPINE_RELEASE: "3.15"
|
|
ALPINE_ARCH: "x86_64"
|
|
ALPINE_VERSION: "3.15.0"
|
|
ALPINE_CHECKSUM: "ec7ec80a96500f13c189a6125f2dbe8600ef593b87fc4670fe959dc02db727a2"
|
|
NIX_VERSION: "2.4"
|
|
services:
|
|
- docker:dind
|
|
before_script:
|
|
- docker login $CI_REGISTRY -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD
|
|
script:
|
|
- wget -nc -P ci/ https://dl-cdn.alpinelinux.org/alpine/v$ALPINE_RELEASE/releases/$ALPINE_ARCH/alpine-minirootfs-$ALPINE_VERSION-$ALPINE_ARCH.tar.gz
|
|
- echo "${ALPINE_CHECKSUM} ci/alpine-minirootfs-$ALPINE_VERSION-$ALPINE_ARCH.tar.gz" | sha256sum -c
|
|
- docker build --tag $CONTAINER_NAME:$CI_COMMIT_SHA --tag $CONTAINER_NAME:latest --build-arg ALPINE_VERSION="$ALPINE_VERSION" --build-arg ALPINE_ARCH="$ALPINE_ARCH" --build-arg NIX_VERSION="$NIX_VERSION" --build-arg FULLDEPS_TESTING=1 ci/
|
|
- docker push $CONTAINER_NAME:$CI_COMMIT_SHA
|
|
- docker push $CONTAINER_NAME:latest
|
|
tags:
|
|
- runner0_dind
|
|
|
|
environment manual:
|
|
extends: .environment
|
|
when: manual
|
|
|
|
environment scheduled:
|
|
extends: .environment
|
|
only:
|
|
variables:
|
|
- $SCHEDULED_ENVIRONMENR_BUILD == "true"
|