Compare commits

..

9 Commits

10 changed files with 82 additions and 35 deletions

View File

@ -1,15 +0,0 @@
#!/usr/bin/env bash
cd src
for archive in *.tar.gz
do
py2dsc $archive
folder="$(find deb_dist/* -maxdepth 0 -type d)"
pushd $folder
dpkg-buildpackage -b -a"${TAMARIN_TARGET_ARCH}"
find ../ -maxdepth 1 -name "*.deb" -type f -print0 | xargs -0r mv -t /dist/
popd
rm -rf $folder
done
exit 0

View File

@ -16,11 +16,11 @@ EOF
echo "ENV DEBIAN_FRONTEND=noninteractive" >> Dockerfile echo "ENV DEBIAN_FRONTEND=noninteractive" >> Dockerfile
echo "RUN apt-get update && apt-get install --yes --no-install-recommends openssl ca-certificates" >> Dockerfile echo "RUN apt-get update && apt-get install --yes --no-install-recommends wget openssl ca-certificates" >> Dockerfile
for cert in $CERTS; do for cert in $CERTS; do
filename=$(basename "$cert") filename=$(basename "$cert")
echo "ADD $cert $DESTDIR/$filename" >> Dockerfile echo "RUN wget -O '$DESTDIR/$filename' $cert" >> Dockerfile
echo "RUN openssl x509 -in '$DESTDIR/$filename' -inform PEM -out '$DESTDIR/$filename.crt'" >> Dockerfile echo "RUN openssl x509 -in '$DESTDIR/$filename' -inform PEM -out '$DESTDIR/$filename.crt'" >> Dockerfile
done done

View File

@ -1,9 +0,0 @@
#!/usr/bin/env bash
set -e
echo 'ENV DEBIAN_FRONTEND=noninteractive' >> Dockerfile
echo 'RUN apt-get update && apt-get install --yes --no-install-recommends python3-all dh-python python3-pip' >> Dockerfile
echo 'RUN pip3 install stdeb' >> Dockerfile
echo 'ENV DEBIAN_FRONTEND=' >> Dockerfile

View File

@ -63,10 +63,10 @@ function parse_tag {
extended_version="${tag##*/}" extended_version="${tag##*/}"
if [ "$flavor" = "pkg" ] if [ "$flavor" = "pkg" ]
then then
exploded_version="$(echo $extended_version | sed "s/\([a-z0-9.]\+\)-\([0-9]\+\)\(-[a-z]\++[0-9]\+\)\?\(-\([0-9]\+\)-\(g[a-z0-9]\+\)\)\?$/version:\1 revision:\2 modification:\3 distance:\5 anchor:\6/")" exploded_version="$(echo $extended_version | sed "s/\([a-z0-9.+]\+\)-\([0-9]\+\)\(-[a-z]\++[0-9]\+\)\?\(-\([0-9]\+\)-\(g[a-z0-9]\+\)\)\?$/version:\1 revision:\2 modification:\3 distance:\5 anchor:\6/")"
elif [ "$flavor" = "release" ] elif [ "$flavor" = "release" ]
then then
exploded_version="$(echo $extended_version | sed "s/\([a-z0-9.]\+\)\(-\([0-9]\+\)-\(g[a-z0-9]\+\)\)\?$/version:\1 distance:\3 anchor:\4/")" exploded_version="$(echo $extended_version | sed "s/\([a-z0-9.+]\+\)\(-\([0-9]\+\)-\(g[a-z0-9]\+\)\)\?$/version:\1 distance:\3 anchor:\4/")"
fi fi
echo $exploded_version echo $exploded_version
} }
@ -181,6 +181,7 @@ function packager_from_commit {
} }
function next_version { function next_version {
set -x
commit="$1" commit="$1"
# upstream version is given by most recent of release or pkg tag # upstream version is given by most recent of release or pkg tag
previous_pkg="$(git describe --long --match='pkg/*' $commit 2>/dev/null)" previous_pkg="$(git describe --long --match='pkg/*' $commit 2>/dev/null)"
@ -204,6 +205,7 @@ function next_version {
version="$(get_upstream_version_from_tag $previous_release)-1" version="$(get_upstream_version_from_tag $previous_release)-1"
elif [ -n "$previous_pkg" ] elif [ -n "$previous_pkg" ]
then then
distance_from_pkg=$(get_distance_from_tag "$previous_pkg" "$commit")
distance=$distance_from_pkg distance=$distance_from_pkg
version="$(get_upstream_version_from_tag $previous_pkg)-$(expr $(get_package_version_from_tag $previous_pkg) + 1)" version="$(get_upstream_version_from_tag $previous_pkg)-$(expr $(get_package_version_from_tag $previous_pkg) + 1)"
else else
@ -212,9 +214,10 @@ function next_version {
fi fi
if [ "$package_level" = 'dev' ] || [ "$package_level" = 'staging' ] if [ "$package_level" = 'dev' ] || [ "$package_level" = 'staging' ]
then then
version="${version}~${package_level}+${distance}~$(get_short_hash $commit)" version="${version}~${package_level}+${distance}"
fi fi
echo $version echo $version
set +x
} }
function gen_changelog_entry { function gen_changelog_entry {
@ -257,9 +260,15 @@ function gen_changelog_entry {
} }
function gen_changelog() { function gen_changelog() {
limit=10
while gen_changelog_entry $ceiling_commit while gen_changelog_entry $ceiling_commit
do do
limit=`expr $limit - 1`
echo $changelog_entry echo $changelog_entry
if [ "$limit" -le 0 ]
then
break
fi
done done
} }

View File

@ -41,7 +41,7 @@ def build_image(build_workspace, base_image, profile_name, profile, debug=False,
# Run hooks # Run hooks
tamarin.run_profile_hooks(profile, 'containerbuild', cwd=build_workspace, env=hooks_env, debug=debug) tamarin.run_profile_hooks(profile, 'containerbuild', cwd=build_workspace, env=hooks_env, debug=debug)
image_tag = "tamarin:{:s}_{:s}_{:d}".format(profile_name, base_image.replace(':', '_'), os.getpid()) image_tag = "tamarin:{:s}_{:s}_{:d}".format(profile_name, base_image.replace(':', '_').replace('/', '_'), os.getpid())
build_args = [ "build", "-t", image_tag ] build_args = [ "build", "-t", image_tag ]

View File

@ -1,7 +1,7 @@
# Configuration générale du profil # Configuration générale du profil
[profile] [profile]
# Image Docker par défaut # Image Docker par défaut
default_image=debian:stretch default_image=reg.cadoles.com/proxy_cache/library/debian:bookworm
# Configuration de l'étape de pré-construction du conteneur # Configuration de l'étape de pré-construction du conteneur
[containerbuild] [containerbuild]

30
profiles/eole-2.7.0.conf Normal file
View File

@ -0,0 +1,30 @@
# Configuration générale du profil
[profile]
# Image Docker par défaut
default_image=ubuntu:bionic
# Configuration de l'étape de pré-construction du conteneur
[containerbuild]
hooks=
containerbuild/debian/install-build-essential,
containerbuild/debian/install-git,
# Configuration de l'étape de pré-construction du paquet
[prebuild]
hooks=
prebuild/debian/copy-sources-to-workspace,
prebuild/debian/run-project-hooks,
prebuild/debian/load-project-db,
prebuild/debian/complete-project-db,
prebuild/eole/create-changelog,
prebuild/debian/install-build-depends
# Configuration de l'étape de construction du paquet
[build]
hooks=build/debian/build
# Configuration de l'étape de post-construction du paquet
[postbuild]
hooks=
postbuild/debian/run-project-hooks,
postbuild/debian/export-dist

View File

@ -17,7 +17,6 @@ hooks=
prebuild/debian/load-project-db, prebuild/debian/load-project-db,
prebuild/debian/complete-project-db, prebuild/debian/complete-project-db,
prebuild/eole/create-changelog, prebuild/eole/create-changelog,
prebuild/eole/add-package-version-suffix,
prebuild/debian/install-build-depends prebuild/debian/install-build-depends
# Configuration de l'étape de construction du paquet # Configuration de l'étape de construction du paquet

View File

@ -7,7 +7,7 @@ default_image=ubuntu:focal
[containerbuild] [containerbuild]
hooks= hooks=
containerbuild/debian/install-build-essential, containerbuild/debian/install-build-essential,
containerbuild/ubuntu/install-stdeb, containerbuild/debian/install-git,
# Configuration de l'étape de pré-construction du paquet # Configuration de l'étape de pré-construction du paquet
[prebuild] [prebuild]
@ -15,14 +15,16 @@ hooks=
prebuild/debian/copy-sources-to-workspace, prebuild/debian/copy-sources-to-workspace,
prebuild/debian/run-project-hooks, prebuild/debian/run-project-hooks,
prebuild/debian/load-project-db, prebuild/debian/load-project-db,
prebuild/debian/complete-project-db,
prebuild/eole/create-changelog,
prebuild/debian/install-build-depends
# Configuration de l'étape de construction du paquet # Configuration de l'étape de construction du paquet
[build] [build]
hooks=build/stdeb/build hooks=build/debian/build
# Configuration de l'étape de post-construction du paquet # Configuration de l'étape de post-construction du paquet
[postbuild] [postbuild]
hooks= hooks=
postbuild/debian/run-project-hooks, postbuild/debian/run-project-hooks,
postbuild/debian/export-dist postbuild/debian/export-dist

31
profiles/eole-2.9.0.conf Normal file
View File

@ -0,0 +1,31 @@
# Configuration générale du profil
[profile]
# Image Docker par défaut
default_image=ubuntu:jammy
# Configuration de l'étape de pré-construction du conteneur
[containerbuild]
hooks=
containerbuild/debian/install-build-essential,
containerbuild/debian/install-git,
containerbuild/eole-2.9.0/configure-additional-repository,
# Configuration de l'étape de pré-construction du paquet
[prebuild]
hooks=
prebuild/debian/copy-sources-to-workspace,
prebuild/debian/run-project-hooks,
prebuild/debian/load-project-db,
prebuild/debian/complete-project-db,
prebuild/eole/create-changelog,
prebuild/debian/install-build-depends
# Configuration de l'étape de construction du paquet
[build]
hooks=build/debian/build
# Configuration de l'étape de post-construction du paquet
[postbuild]
hooks=
postbuild/debian/run-project-hooks,
postbuild/debian/export-dist