Adicionar job no .gitlab-ci.yml dos pacotes para publicar pacotes no repositório stable
Serão dois novos jobs no .gitlab-ci.yml:
-
build_for_stable: Esse job será igual ao atual
build
, porém ele deve antes substituir o valortesting
porstable
no arquivopackage/debian/changelog
em todas as entradas. -
deploy_to_production: Esse job extra deve ser manual, ou seja, o administrador do repositório git deve clicar em um botão no gitlab para que ele seja publicado no stable do repositório debian (veja manual do gitlab-ci. Ele irá fazer o deploy dos artefatos gerados no
build_for_stable
, rodando o mesmo comando do atual job de nomedeploy
(alterando, portanto, apenas odependencies
.
Outras mudanças necessárias:
- Substituir nome do job
build
parabuild_for_testing
(lembrar de ajustar campodependencies
nos jobs correspondentes). - Substituir nome do job
deploy
paradeploy_to_testing
. - Como vai existir repetição de código em
build_for_testing
ebuild_for_stable
, considerar a criação de um script na raiz do repositório com o código abaixo (pode ser levemente diferente para cada repositório):
LINE=$(head -n 1 package/debian/changelog)
PACKAGE=$(echo $LINE | cut -d' ' -f1)
VERSION=$(echo $LINE | cut -d' ' -f2 | grep -o -E '[0-9]*\.[0-9]*\.[0-9]*')
tar --exclude=debian -czf ${PACKAGE}_${VERSION}.orig.tar.gz package/*
cd package
debuild -us -uc
cd ../
mkdir build/
mv ${PACKAGE}* build/
Efetuar alterações acima mencionadas em todos os pacotes do LE e marcar abaixo quando pronto:
- le-autoupgrade
- le-all
- le-live-all
- le-interface
- le-user-apps
- le-sys-apps
- le-conf
- le-lab
- le-epoptes
- ubiquity
- le-edubar
- le6-gtk-theme
- le-control-panel
- dash-to-dock
- ubiquity-slideshow-le
Para cada pacote, crie um branch issue/230
e solicite merge request para o master
, mencionando essa tarefa no commit (exemplo: SCRUM#230: add job on .gitlab-ci.yml to deploy package to stable repository
.