variables: GIT_VERSION: "2.36.2" DEFAULT_HELP_FORMAT: "man" stages: - build - test - package .build: stage: build script: - yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker - git clone https://github.com/git/git.git - cd git - git checkout v${GIT_VERSION} - autoconf - ./configure --prefix=${CI_PROJECT_DIR}/${NAME} - make NO_INSTALL_HARDLINKS=YesPlease - make NO_INSTALL_HARDLINKS=YesPlease install artifacts: name: ${NAME} paths: - ${NAME} .test: stage: test script: - ${NAME}/bin/git --version | grep ${GIT_VERSION} .package: stage: package script: - cd ${CI_PROJECT_DIR}/${NAME} - zip -r --symlinks ../${NAME}.zip * - 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file ../${NAME}.zip "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/git/${GIT_VERSION}/"' linux-el6-x86_64: extends: [".build"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44 variables: NAME: "git-${GIT_VERSION}-linux-el6-x86_64" test-el6-x86_64: extends: [".test"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44 variables: NAME: "git-${GIT_VERSION}-linux-el6-x86_64" needs: - linux-el6-x86_64 package-el6-x86_64: extends: [".package"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44 variables: NAME: "git-${GIT_VERSION}-linux-el6-x86_64" needs: - linux-el6-x86_64 - test-el6-x86_64 linux-el6-i686: extends: [".build"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86 variables: NAME: "git-${GIT_VERSION}-linux-el6-i686" test-el6-i686: extends: [".test"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86 variables: NAME: "git-${GIT_VERSION}-linux-el6-i686" needs: - linux-el6-i686 package-el6-i686: extends: [".package"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86 variables: NAME: "git-${GIT_VERSION}-linux-el6-i686" needs: - linux-el6-i686 - test-el6-i686 linux-el7-x86_64: extends: [".build"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48 variables: NAME: "git-${GIT_VERSION}-linux-el7-x86_64" test-el7-x86_64: extends: [".test"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48 variables: NAME: "git-${GIT_VERSION}-linux-el7-x86_64" needs: - linux-el7-x86_64 package-el7-x86_64: extends: [".package"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44-x86 variables: NAME: "git-${GIT_VERSION}-linux-el7-x86_64" needs: - linux-el7-x86_64 - test-el7-x86_64 linux-el7-i686: extends: [".build"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48-x86 variables: NAME: "git-${GIT_VERSION}-linux-el7-i686" GIT_ROOT: "${CI_PROJECT_DIR}/${NAME}" test-el7-i686: extends: [".test"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48-x86 variables: NAME: "git-${GIT_VERSION}-linux-el7-i686" needs: - linux-el7-i686 package-el7-i686: extends: [".package"] image: gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el7-gcc48-x86 variables: NAME: "git-${GIT_VERSION}-linux-el7-i686" needs: - linux-el7-i686 - test-el7-i686