Merge branch 'build_docker_on_gitlab' into 'master'
Build Docker Images on GitLab See merge request librewolf-community/browser/bsys5!8
This commit is contained in:
commit
24507d7724
5 changed files with 65 additions and 27 deletions
|
|
@ -1,8 +1,46 @@
|
||||||
stages:
|
stages:
|
||||||
|
- images
|
||||||
- build
|
- build
|
||||||
- release
|
- release
|
||||||
- deploy
|
- deploy
|
||||||
|
|
||||||
|
Build Docker Images:
|
||||||
|
stage: images
|
||||||
|
when: manual
|
||||||
|
# only:
|
||||||
|
# - master
|
||||||
|
image: ubuntu
|
||||||
|
services:
|
||||||
|
- docker:dind
|
||||||
|
parallel:
|
||||||
|
matrix:
|
||||||
|
- DISTRO:
|
||||||
|
- debian11
|
||||||
|
- ubuntu20
|
||||||
|
- ubuntu21
|
||||||
|
- ubuntu22
|
||||||
|
- mint20
|
||||||
|
- fedora34
|
||||||
|
- fedora35
|
||||||
|
- fedora36
|
||||||
|
- macos-x86_64
|
||||||
|
- macos-aarch64
|
||||||
|
variables:
|
||||||
|
DOCKER_HOST: tcp://docker:2375
|
||||||
|
# Install docker and make
|
||||||
|
before_script:
|
||||||
|
- apt-get update
|
||||||
|
- apt-get install -y ca-certificates curl gnupg lsb-release
|
||||||
|
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
|
||||||
|
- echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||||
|
- apt-get update
|
||||||
|
- apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin make
|
||||||
|
# Build container
|
||||||
|
script:
|
||||||
|
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD registry.gitlab.com
|
||||||
|
- make docker-$DISTRO
|
||||||
|
- docker push registry.gitlab.com/librewolf-community/browser/bsys5/$DISTRO:latest
|
||||||
|
|
||||||
Build:
|
Build:
|
||||||
stage: build
|
stage: build
|
||||||
when: manual
|
when: manual
|
||||||
|
|
@ -23,7 +61,7 @@ Build:
|
||||||
variables:
|
variables:
|
||||||
SOURCE_URL: $SOURCE_URL
|
SOURCE_URL: $SOURCE_URL
|
||||||
use_docker: "false"
|
use_docker: "false"
|
||||||
image: librewolf/bsys5-image-$DISTRO
|
image: registry.gitlab.com/librewolf-community/browser/bsys5/$DISTRO
|
||||||
tags:
|
tags:
|
||||||
- amd64
|
- amd64
|
||||||
# Build on dedicated runner
|
# Build on dedicated runner
|
||||||
|
|
|
||||||
40
Makefile
40
Makefile
|
|
@ -76,28 +76,28 @@ build :
|
||||||
${MAKE} clean
|
${MAKE} clean
|
||||||
|
|
||||||
push :
|
push :
|
||||||
docker push librewolf/bsys5-image-debian11
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/debian11
|
||||||
docker push librewolf/bsys5-image-mint20
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/mint20
|
||||||
docker push librewolf/bsys5-image-ubuntu20
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu20
|
||||||
docker push librewolf/bsys5-image-ubuntu21
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu21
|
||||||
docker push librewolf/bsys5-image-ubuntu22
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu22
|
||||||
docker push librewolf/bsys5-image-fedora34
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/fedora34
|
||||||
docker push librewolf/bsys5-image-fedora35
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/fedora35
|
||||||
docker push librewolf/bsys5-image-fedora36
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/fedora36
|
||||||
docker push librewolf/bsys5-image-macos-x86_64
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/macos-x86_64
|
||||||
docker push librewolf/bsys5-image-macos-aarch64
|
docker push registry.gitlab.com/librewolf-community/browser/bsys5/macos-aarch64
|
||||||
|
|
||||||
rmi :
|
rmi :
|
||||||
docker rmi librewolf/bsys5-image-debian11
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/debian11
|
||||||
docker rmi librewolf/bsys5-image-mint20
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/mint20
|
||||||
docker rmi librewolf/bsys5-image-ubuntu20
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu20
|
||||||
docker rmi librewolf/bsys5-image-ubuntu21
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu21
|
||||||
docker rmi librewolf/bsys5-image-ubuntu22
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu22
|
||||||
docker rmi librewolf/bsys5-image-fedora34
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/fedora34
|
||||||
docker rmi librewolf/bsys5-image-fedora35
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/fedora35
|
||||||
docker rmi librewolf/bsys5-image-fedora36
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/fedora36
|
||||||
docker rmi librewolf/bsys5-image-macos-x86_64
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/macos-x86_64
|
||||||
docker rmi librewolf/bsys5-image-macos-aarch64
|
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/macos-aarch64
|
||||||
|
|
||||||
update :
|
update :
|
||||||
@wget -q -O version "https://gitlab.com/librewolf-community/browser/source/-/raw/main/version"
|
@wget -q -O version "https://gitlab.com/librewolf-community/browser/source/-/raw/main/version"
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ librewolf-$(full_version).en-US.$(distro).x86_64.deb : $(infile)
|
||||||
ifeq ($(use_docker),false)
|
ifeq ($(use_docker),false)
|
||||||
(cd work && bash linux.build-deb.sh $(full_version))
|
(cd work && bash linux.build-deb.sh $(full_version))
|
||||||
else
|
else
|
||||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-$(distro) sh -c "bash linux.build-deb.sh $(full_version)"
|
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/$(distro) sh -c "bash linux.build-deb.sh $(full_version)"
|
||||||
endif
|
endif
|
||||||
cp -v work/librewolf.deb $@
|
cp -v work/librewolf.deb $@
|
||||||
sha256sum $@ > $@.sha256sum
|
sha256sum $@ > $@.sha256sum
|
||||||
|
|
@ -55,7 +55,7 @@ ifeq ($(use_docker),false)
|
||||||
(cp -r work / && cd work && bash linux.build-rpm.sh $(fc))
|
(cp -r work / && cd work && bash linux.build-rpm.sh $(fc))
|
||||||
cp -v /work/$@ $@
|
cp -v /work/$@ $@
|
||||||
else
|
else
|
||||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-$(distro) sh -c "bash linux.build-rpm.sh $(fc)"
|
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/$(distro) sh -c "bash linux.build-rpm.sh $(fc)"
|
||||||
cp -v work/$@ $@
|
cp -v work/$@ $@
|
||||||
endif
|
endif
|
||||||
sha256sum $@ > $@.sha256sum
|
sha256sum $@ > $@.sha256sum
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ full_version:=$(version)-$(source_release)$(shell [ $(release) -gt 1 ] && echo "
|
||||||
outfile=librewolf-$(full_version).en-US.$(distro)-x86_64.tar.bz2
|
outfile=librewolf-$(full_version).en-US.$(distro)-x86_64.tar.bz2
|
||||||
|
|
||||||
docker :
|
docker :
|
||||||
docker build --build-arg "distro=$(distro_image)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t librewolf/bsys5-image-$(distro) - < assets/linux.Dockerfile
|
docker build --build-arg "distro=$(distro_image)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t registry.gitlab.com/librewolf-community/browser/bsys5/$(distro):latest - < assets/linux.Dockerfile
|
||||||
|
|
||||||
build : $(outfile) $(outfile).sha256sum
|
build : $(outfile) $(outfile).sha256sum
|
||||||
|
|
||||||
|
|
@ -21,7 +21,7 @@ $(outfile) :
|
||||||
ifeq ($(use_docker),false)
|
ifeq ($(use_docker),false)
|
||||||
(cd work/librewolf-$(version)-$(source_release) && ./mach build && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales)
|
(cd work/librewolf-$(version)-$(source_release) && ./mach build && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales)
|
||||||
else
|
else
|
||||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-$(distro) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales"
|
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/$(distro) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales"
|
||||||
endif
|
endif
|
||||||
cp -v work/librewolf-$(version)-$(source_release)/obj-x86_64-pc-linux-gnu/dist/librewolf-$(version)-$(source_release).en-US.linux-x86_64.tar.bz2 $(outfile)
|
cp -v work/librewolf-$(version)-$(source_release)/obj-x86_64-pc-linux-gnu/dist/librewolf-$(version)-$(source_release).en-US.linux-x86_64.tar.bz2 $(outfile)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ full_version:=$(version)-$(source_release)$(shell [ $(release) -gt 1 ] && echo "
|
||||||
outfile=librewolf-$(full_version).en-US.mac.$(arch).dmg
|
outfile=librewolf-$(full_version).en-US.mac.$(arch).dmg
|
||||||
|
|
||||||
docker :
|
docker :
|
||||||
docker build --build-arg "arch=$(arch)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t librewolf/bsys5-image-macos-$(arch) - < assets/macos.Dockerfile
|
docker build --build-arg "arch=$(arch)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t registry.gitlab.com/librewolf-community/browser/bsys5/macos-$(arch) - < assets/macos.Dockerfile
|
||||||
|
|
||||||
build : $(outfile) $(outfile).sha256sum
|
build : $(outfile) $(outfile).sha256sum
|
||||||
|
|
||||||
|
|
@ -21,7 +21,7 @@ $(outfile) :
|
||||||
ifeq ($(use_docker),false)
|
ifeq ($(use_docker),false)
|
||||||
(cd work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package)
|
(cd work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package)
|
||||||
else
|
else
|
||||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-macos-$(arch) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package"
|
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/macos-$(arch) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package"
|
||||||
endif
|
endif
|
||||||
cp -v work/librewolf-$(version)-$(source_release)/obj-$(arch)-apple-darwin/dist/librewolf-$(version)-$(source_release).en-US.mac.dmg $(outfile)
|
cp -v work/librewolf-$(version)-$(source_release)/obj-$(arch)-apple-darwin/dist/librewolf-$(version)-$(source_release).en-US.mac.dmg $(outfile)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue