version: 2 workflows: version: 2 build_branch: jobs: - build_centos7 build_release: jobs: - build_centos7: filters: tags: only: /^\d+\.\d+\.\d+$/ branches: ignore: /.*/ jobs: build_centos7: docker: - image: offical2600hz/metapackager:1.0-centos-7 user: circleci shell: /bin/bash --login working_directory: /home/circleci/2600hz/the_app environment: CIRCLE_ARTIFACTS: /tmp/circleci-artifacts CIRCLE_TEST_REPORTS: /tmp/circleci-test-results BASH_ENV: "/home/circleci/2600hz/.bashrc" BUILD_ROOT: "/home/circleci/2600hz/packager" CORE_ROOT: "/home/circleci/2600hz/the_app" BUILD_SOURCES: "/home/circleci/2600hz/packager/SOURCES" BUILD_RPMS: "/home/circleci/2600hz/packager/RPMS" APP_DIR: "/home/circleci/2600hz/the_app" steps: - checkout - run: name: Setting up Directories command: | APP=${CIRCLE_PROJECT_REPONAME#meta-} echo -e "export APP=${APP}\n" >> $BASH_ENV - run: name: Generating version info command: | cd $BUILD_ROOT VERSION=$(./version) RELEASE=$(./release) PACKAGE_NAME=$(./package_name) echo "export PACKAGE_NAME=${PACKAGE_NAME}" >> $BASH_ENV echo "export VERSION=${VERSION}" >> $BASH_ENV echo "export RELEASE=${RELEASE}" >> $BASH_ENV PACKAGE_NAME=$(./package_name) echo "export PACKAGE_NAME=${PACKAGE_NAME}" >> $BASH_ENV echo "build version for ${PACKAGE_NAME} version: ${VERSION} release: ${RELEASE}" - run: name: Generating CHANGELOG and VERSION files command: | cd $BUILD_ROOT echo " - generate build version and changelog" ./package_docs - run: name: Preparing source for packaging command: | echo " - preparing source" cp -R ${APP_DIR}/* ${BUILD_SOURCES}/ cd $BUILD_SOURCES echo " - removing files that should not be packaged in the source tar" rm -rf ${BUILD_SOURCES}/.??* rm -rf ${BUILD_SOURCES}/doc* rm -rf ${BUILD_SOURCES}/*.md echo " - creating the source tar" cd $BUILD_ROOT ARTIFACTS_NAME=${PACKAGE_NAME}-${VERSION} mkdir -p ${ARTIFACTS_NAME} cp -r ${BUILD_SOURCES}/* ${ARTIFACTS_NAME}/. tar -cf ${ARTIFACTS_NAME}.tar ${ARTIFACTS_NAME} cp ${ARTIFACTS_NAME}.tar ${BUILD_SOURCES}/. - run: name: Building package command: | cd $BUILD_ROOT ./build - store_artifacts: path: /home/circleci/2600hz/packager/RPMS