diff --git a/Makefile b/Makefile deleted file mode 100644 index c4ebff49..00000000 --- a/Makefile +++ /dev/null @@ -1,44 +0,0 @@ -# TC Build container - -# Set defaults that may be overridden in the buidrc -MY_TC_RELEASE := tis-r5-pike - -UID := $(shell id -u) -USER := $(shell id -un) - -# Import the build config -NULL := $(shell bash -c "source buildrc; set | sed -E '/^[[:alnum:]_]+/s/=/:=/' | sed 's/^//' > .makeenv") -include .makeenv - -MYUNAME ?= $(USER) - -TC_CONTAINER_NAME := $(MYUNAME)-centos-builder -TC_CONTAINER_TAG := local/$(MYUNAME)-stx-builder:7.4 -TC_DOCKERFILE := Dockerfile - -all: - docker build \ - --build-arg MYUID=$(UID) \ - --build-arg MYUNAME=$(MYUNAME) \ - --ulimit core=0 \ - --network host \ - -t $(TC_CONTAINER_TAG) \ - -f $(TC_DOCKERFILE) \ - . - -clean: - docker rm $(TC_CONTAINER_NAME) || true - docker image rm $(TC_CONTAINER_TAG) - -env: - @echo "TC_DOCKERFILE=$(TC_DOCKERFILE)" - @echo "TC_CONTAINER_NAME=$(TC_CONTAINER_NAME)" - @echo "TC_CONTAINER_TAG=$(TC_CONTAINER_TAG)" - @echo "SOURCE_REMOTE_NAME=$(SOURCE_REMOTE_NAME)" - @echo "SOURCE_REMOTE_URI=$(SOURCE_REMOTE_URI)" - @echo "HOST_MIRROR_DIR=$(HOST_MIRROR_DIR)" - @echo "MY_TC_RELEASE=$(MY_TC_RELEASE)" - @echo "LOCALDISK=${LOCALDISK}" - @echo "GUEST_LOCALDISK=${GUEST_LOCALDISK}" - -.PHONY: all clean env diff --git a/README.rst b/README.rst index ea298fe0..f8651023 100644 --- a/README.rst +++ b/README.rst @@ -54,11 +54,11 @@ Build image ~~~~~~~~~~~ Once the configuration files have been customized, it is possible to build -the docker image. This process is automated by the Makefile. +the docker image. This process is automated by the ``tb.sh`` script. .. code-block:: bash - make + ./tb.sh create NOTE: ~~~~~ diff --git a/centos-mirror-tools/rpms_3rdparties.lst b/centos-mirror-tools/rpms_3rdparties.lst index be7ed41e..09495185 100644 --- a/centos-mirror-tools/rpms_3rdparties.lst +++ b/centos-mirror-tools/rpms_3rdparties.lst @@ -14,3 +14,10 @@ python2-wheel-0.31.1-3.fc30.noarch.rpm#https://kojipkgs.fedoraproject.org/packag python3-wheel-0.31.1-3.fc30.noarch.rpm#https://kojipkgs.fedoraproject.org/packages/python-wheel/0.31.1/3.fc30/noarch/python3-wheel-0.31.1-3.fc30.noarch.rpm python2-pip-9.0.3-6.fc29.noarch.rpm#https://kojipkgs.fedoraproject.org/packages/python-pip/9.0.3/6.fc29/noarch/python2-pip-9.0.3-6.fc29.noarch.rpm python3-pip-9.0.3-6.fc29.noarch.rpm#https://kojipkgs.fedoraproject.org/packages/python-pip/9.0.3/6.fc29/noarch/python3-pip-9.0.3-6.fc29.noarch.rpm +python2-cliff-2.13.0-1.el7.noarch.rpm#https://cbs.centos.org/kojifiles/packages/python-cliff/2.13.0/1.el7/noarch/python2-cliff-2.13.0-1.el7.noarch.rpm +python2-keystoneauth1-3.10.0-1.el7.noarch.rpm#https://cbs.centos.org/kojifiles/packages/python-keystoneauth1/3.10.0/1.el7/noarch/python2-keystoneauth1-3.10.0-1.el7.noarch.rpm +python2-openstackdocstheme-1.23.2-1.el7.noarch.rpm#https://cbs.centos.org/kojifiles/packages/python-openstackdocstheme/1.23.2/1.el7/noarch/python2-openstackdocstheme-1.23.2-1.el7.noarch.rpm +python2-os-service-types-1.3.0-1.el7.noarch.rpm#https://cbs.centos.org/kojifiles/packages/python-os-service-types/1.3.0/1.el7/noarch/python2-os-service-types-1.3.0-1.el7.noarch.rpm +python2-osc-lib-1.11.1-1.el7.noarch.rpm#https://cbs.centos.org/kojifiles/packages/python-osc-lib/1.11.1/1.el7/noarch/python2-osc-lib-1.11.1-1.el7.noarch.rpm +python2-osc-lib-tests-1.11.1-1.el7.noarch.rpm#https://cbs.centos.org/kojifiles/packages/python-osc-lib/1.11.1/1.el7/noarch/python2-osc-lib-tests-1.11.1-1.el7.noarch.rpm +python2-sphinxcontrib-apidoc-0.2.1-6.el7.noarch.rpm#https://cbs.centos.org/kojifiles/packages/python-sphinxcontrib-apidoc/0.2.1/6.el7/noarch/python2-sphinxcontrib-apidoc-0.2.1-6.el7.noarch.rpm diff --git a/centos-mirror-tools/rpms_centos.lst b/centos-mirror-tools/rpms_centos.lst index bbe735a2..28bd44e5 100644 --- a/centos-mirror-tools/rpms_centos.lst +++ b/centos-mirror-tools/rpms_centos.lst @@ -1143,6 +1143,7 @@ python2-boto-2.45.0-3.el7.noarch.rpm python2-cachez-0.1.0-2.el7.noarch.rpm python2-castellan-0.12.2-1.el7.noarch.rpm python2-certifi-2018.10.15-1.el7.noarch.rpm +python2-ceilometerclient-2.9.0-1.el7.noarch.rpm python2-colorama-0.3.7-2.el7.noarch.rpm python2-congressclient-1.8.0-1.el7.noarch.rpm python2-cotyledon-1.6.3-1.el7.noarch.rpm @@ -1161,12 +1162,14 @@ python2-designateclient-2.7.0-1.el7.noarch.rpm python2-django-babel-0.4.0-2.el7.noarch.rpm python2-django-formtools-1.0-4.el7.noarch.rpm python2-dulwich-0.18.4-1.el7.x86_64.rpm +python2-extras-1.0.0-2.el7.noarch.rpm python2-fasteners-0.14.1-6.el7.noarch.rpm python2-fixtures-3.0.0-7.el7.noarch.rpm python2-funcsigs-1.0.2-4.el7.noarch.rpm python2-functools32-3.2.3.2-1.el7.noarch.rpm python2-futures-3.1.1-5.el7.noarch.rpm python2-futurist-1.3.1-1.el7.noarch.rpm +python2-future-0.16.0-4.el7.noarch.rpm python2-gabbi-1.33.0-1.el7.noarch.rpm python2-gevent-1.1.2-2.el7.x86_64.rpm python2-gflags-2.0-5.el7.noarch.rpm @@ -1180,11 +1183,14 @@ python2-imagesize-0.7.1-5.el7.noarch.rpm python2-influxdb-4.0.0-1.el7.1.noarch.rpm python2-iso8601-0.1.11-7.el7.noarch.rpm python2-jinja2-2.8.1-1.el7.noarch.rpm +python2-jmespath-0.9.0-5.el7.noarch.rpm python2-json-logger-0.1.7-1.el7.noarch.rpm python2-jsonpatch-1.14-1.el7.noarch.rpm +python2-jsonpatch-1.21-1.el7.noarch.rpm python2-jsonpath-rw-ext-1.0.0-1.el7.noarch.rpm python2-jsonpointer-1.10-4.el7.noarch.rpm python2-jsonschema-2.5.1-3.el7.noarch.rpm +python2-keystonemiddleware-4.17.0-1.el7.noarch.rpm python2-kombu-4.0.2-5.el7.noarch.rpm python2-lz4-0.9.0-1.el7.x86_64.rpm python2-marathon-0.8.8-1.el7.noarch.rpm @@ -1197,6 +1203,7 @@ python2-mimeparse-1.6.0-4.el7.noarch.rpm python2-mock-2.0.0-1.el7.noarch.rpm python2-monascaclient-1.7.1-1.el7.noarch.rpm python2-mox3-0.23.0-1.el7.noarch.rpm +python2-munch-2.2.0-2.el7.noarch.rpm python2-murano-pkg-check-0.3.0-2.el7.noarch.rpm python2-numexpr-2.6.1-3.el7.x86_64.rpm python2-numpy-1.11.2-2.el7.x86_64.rpm @@ -1206,11 +1213,16 @@ python2-olefile-0.46-1.el7.noarch.rpm python2-openstack-doc-tools-1.3.0-2.el7.noarch.rpm python2-os-client-config-1.28.0-1.el7.noarch.rpm python2-oslo-cache-1.25.1-1.el7.noarch.rpm +python2-oslo-concurrency-3.21.1-1.el7.noarch.rpm python2-oslo-config-4.11.1-1.el7.noarch.rpm +python2-oslo-config-5.2.0-1.el7.noarch.rpm python2-oslo-context-2.17.1-1.el7.noarch.rpm +python2-oslo-context-2.20.0-1.el7.noarch.rpm python2-oslo-db-4.25.1-1.el7.noarch.rpm python2-oslo-i18n-3.17.1-1.el7.noarch.rpm python2-oslo-log-3.30.2-1.el7.noarch.rpm +python2-oslo-log-3.36.0-1.el7.noarch.rpm +python-oslo-log-lang-3.36.0-1.el7.noarch.rpm python2-oslo-middleware-3.30.1-1.el7.noarch.rpm python2-oslo-policy-1.25.3-1.el7.noarch.rpm python2-oslo-privsep-1.22.1-1.el7.noarch.rpm @@ -1220,9 +1232,11 @@ python2-oslo-serialization-2.20.2-1.el7.noarch.rpm python2-oslo-sphinx-4.15.2-1.el7.noarch.rpm python2-oslotest-2.17.1-1.el7.noarch.rpm python2-oslo-utils-3.28.3-1.el7.noarch.rpm +python2-oslo-utils-3.35.1-1.el7.noarch.rpm python2-oslo-versionedobjects-1.26.2-1.el7.noarch.rpm python2-oslo-versionedobjects-tests-1.26.2-1.el7.noarch.rpm python2-oslo-vmware-2.23.1-1.el7.noarch.rpm +python2-osprofiler-1.11.0-1.el7.noarch.rpm python2-os-traits-0.3.3-1.el7.noarch.rpm python2-os-win-2.2.0-1.el7.noarch.rpm python2-os-xenapi-0.2.0-1.el7.noarch.rpm @@ -1249,6 +1263,7 @@ python2-pygments-2.2.0-7.el7.noarch.rpm python2-PyMySQL-0.9.2-1.el7.noarch.rpm python2-pyngus-2.2.4-1.el7.noarch.rpm python2-pyOpenSSL-16.2.0-3.el7.noarch.rpm +python2-pyOpenSSL-17.3.0-3.el7.noarch.rpm python2-pyparsing-2.1.10-3.el7.noarch.rpm python2-pyroute2-0.4.19-1.el7.noarch.rpm python2-pysaml2-3.0.2-2.el7.noarch.rpm @@ -1286,13 +1301,17 @@ python2-sphinx_rtd_theme-0.2.4-2.el7.0.noarch.rpm python2-sphinx-theme-alabaster-0.7.9-4.el7.noarch.rpm python2-sqlalchemy-1.1.11-1.el7.x86_64.rpm python2-statsd-3.2.1-5.el7.noarch.rpm +python2-stestr-1.1.0-1.el7.noarch.rpm python2-stevedore-1.25.1-1.el7.noarch.rpm +python2-subunit-1.2.0-14.el7.noarch.rpm python2-suds-0.7-0.4.94664ddd46a6.el7.noarch.rpm python2-swiftclient-3.4.0-1.el7.noarch.rpm python2-tables-3.3.0-4.el7.x86_64.rpm python2-taskflow-2.14.1-1.el7.noarch.rpm python2-tenacity-4.4.0-1.el7.noarch.rpm +python2-testrepository-0.0.20-12.el7.noarch.rpm python2-testresources-1.0.0-1.el7.noarch.rpm +python2-testscenarios-0.5.0-8.el7.noarch.rpm python2-tinyrpc-0.5-4.20170523git1f38ac.el7.noarch.rpm python2-traceback2-1.4.0-7.el7.noarch.rpm python2-troveclient-2.12.0-1.el7.noarch.rpm @@ -1323,6 +1342,7 @@ python2-XStatic-smart-table-1.4.13.2-1.el7.noarch.rpm python2-XStatic-termjs-0.0.7.0-1.el7.noarch.rpm python2-XStatic-tv4-1.2.7.0-0.1.pre_review.el7.noarch.rpm python2-yaql-1.1.0-3.el7.noarch.rpm +python2-yaql-1.1.3-2.el7.noarch.rpm python2-zake-0.2.2-2.el7.noarch.rpm python2-zaqarclient-1.7.0-1.el7.noarch.rpm python-alembic-0.8.10-1.el7.noarch.rpm @@ -1437,6 +1457,7 @@ python-oslo-policy-lang-1.25.3-1.el7.noarch.rpm python-oslo-privsep-lang-1.22.1-1.el7.noarch.rpm python-oslo-service-1.25.1-1.el7.src.rpm python-oslo-utils-lang-3.28.3-1.el7.noarch.rpm +python-oslo-utils-lang-3.35.1-1.el7.noarch.rpm python-oslo-versionedobjects-lang-1.26.2-1.el7.noarch.rpm python-oslo-vmware-lang-2.23.1-1.el7.noarch.rpm python-osprofiler-1.4.0-1.el7.noarch.rpm @@ -1477,6 +1498,7 @@ python-semantic_version-2.4.2-2.el7.noarch.rpm python-service-identity-14.0.0-4.el7.noarch.rpm python-setproctitle-1.1.9-4.el7.x86_64.rpm python-simplegeneric-0.8-7.el7.noarch.rpm +python-simplejson-3.5.3-5.el7.x86_64.rpm python-slip-0.4.0-4.el7.noarch.rpm python-slip-dbus-0.4.0-4.el7.noarch.rpm python-sphinx-locale-1.6.2-3.el7.noarch.rpm diff --git a/release/branch-stx.sh b/release/branch-stx.sh index f82af92d..8075242f 100755 --- a/release/branch-stx.sh +++ b/release/branch-stx.sh @@ -6,8 +6,6 @@ # --dry-run|-n Do all work except pushing back to the remote repo. # Useful to validate everything locally before pushing. # -# -b Set branch only (sets TAG="") -# # -l List the repo URLS that would be processed and exit # # -m Extract the repo list from for starlingx @@ -37,8 +35,8 @@ # branch is not named 'master'. When SRC_BRANCH == BRANCH this is effectively # a tag-only operation. # -# TAG is the release tag that represents the actual release, derived by adding -# a 'patch' version to SERIES, initially '0'. If TAG is unset no tag is created. +# TAG is the release tag that represents the actual release. If TAG is unset +# no tag is created. # # Notes: # * This script is used for creating milestone, release and feature branches. @@ -73,7 +71,8 @@ while getopts "$optspec" o; do esac ;; b) - BRANCH_ONLY=1 + : + # left for backward-compatibility, unused ;; l) LIST=1 @@ -105,16 +104,11 @@ SERIES=${SERIES:-$(date '+%Y.%m')} BRANCH=${BRANCH:-m/$SERIES} # tag: YYYY.MM.0 -TAG=${TAG:-$SERIES.0} +TAG=${TAG:-""} # The list of remotes to extract from MANIFEST REMOTES="starlingx stx-staging" -if [[ -n $BRANCH_ONLY ]]; then - # Force tag to be empty - TAG="" -fi - if [[ -n $TAG_ONLY ]]; then # Force source and target branches to be the same SRC_BRANCH=${BRANCH} @@ -226,7 +220,7 @@ fi for i in $repo_list; do if [[ -z $LIST ]]; then - branch_repo $i HEAD $BRANCH $TAG + branch_repo "$i" HEAD "$BRANCH" "$TAG" else echo "$i" fi diff --git a/tb.sh b/tb.sh index e0508dd3..90ce3cae 100755 --- a/tb.sh +++ b/tb.sh @@ -25,6 +25,17 @@ TC_CONTAINER_NAME=${MYUNAME}-centos-builder TC_CONTAINER_TAG=local/${MYUNAME}-stx-builder:7.4 TC_DOCKERFILE=Dockerfile +function create_container { + docker build \ + --build-arg MYUID=$(id -u) \ + --build-arg MYUNAME=${USER} \ + --ulimit core=0 \ + --network host \ + -t ${TC_CONTAINER_TAG} \ + -f ${TC_DOCKERFILE} \ + . +} + function exec_container { docker cp ${WORK_DIR}/buildrc ${TC_CONTAINER_NAME}:/home/${MYUNAME} docker cp ${WORK_DIR}/localrc ${TC_CONTAINER_NAME}:/home/${MYUNAME} @@ -57,8 +68,13 @@ function kill_container { docker kill ${TC_CONTAINER_NAME} } +function clean_container { + docker rm ${TC_CONTAINER_NAME} || true + docker image rm ${TC_CONTAINER_TAG} +} + function usage { - echo "$0 [run|exec|env|stop|kill]" + echo "$0 [create|run|exec|env|stop|kill|clean]" } case $CMD in @@ -74,6 +90,9 @@ case $CMD in echo "MY_TC_RELEASE=${MY_TC_RELEASE}" echo "MY_REPO_ROOT_DIR=${MY_REPO_ROOT_DIR}" ;; + create) + create_container + ;; exec) exec_container ;; @@ -86,9 +105,12 @@ case $CMD in kill) kill_container ;; + clean) + clean_container + ;; *) echo "Unknown command: $CMD" - usage + usage exit 1 ;; esac