# limitations under the License.
set -x
+set -eu
scriptdir="$(dirname $(readlink -f ${BASH_SOURCE[0]}))"
source $scriptdir/lib.sh
-_read_manifest_vars
-pushd $MANIFEST_PATH
-sed -i -e "s/^Version: .*/Version: $PRODUCT_RELEASE_BUILD_ID/" rpmbuild.spec
-cat > product-release <<EOF
-release=$PRODUCT_RELEASE_LABEL
-build=$PRODUCT_RELEASE_BUILD_ID
-EOF
-popd
+work=${1:-$WORKTMP/manifest-work}
+work=$(readlink -f $work)
+rm -rf $work
+mkdir -p $work
+cp -f $MANIFEST_PATH/*.spec $work
+
+$scriptdir/create_mock_config.sh $MANIFEST_PATH/build_config.ini $work/mock_config
+
+rpm_macros=$work/rpmmacros
+$scriptdir/mock2rpmbuild_config.py --mock-config $work/mock_config/mock.cfg --output-file-path $rpm_macros
+
+docker run --rm \
+ -v $rpm_macros:/root/.rpmmacros \
+ -v $work:/work \
+ alpine:3.9.4 \
+ sh -c '\
+ apk add rpm && \
+ rpmbuild --build-in-place --rmspec -ba /work/*.spec && \
+ find /root/rpmbuild -name "*.rpm" | xargs -I "{}" mv {} /work'
+
+_add_rpms_to_localrepo $(find $work -name '*.rpm')