#!/bin/bash

set -o errexit
set -o xtrace

# move to source directory
pushd ${SOURCE_DIR}

cp -a yarn.lock /tmp/yarn.lock

# modify changelog to unstable configuration if IS_UNSTABLE
if [[ ${IS_UNSTABLE} == 'yes' ]]; then
    pushd fedora

    PR_ID=$( git log --grep 'Merge pull request' --oneline --single-worktree --first-parent | head -1 | grep --color=none -Eo '#[0-9]+' | tr -d '#' )

    sed -i "s/Version:.*/Version:        ${BUILD_ID}/" jellyfin-web.spec
    sed -i "/%changelog/q" jellyfin-web.spec

    cat <<EOF >>jellyfin-web.spec
* $( LANG=C date '+%a %b %d %Y' ) Jellyfin Packaging Team <packaging@jellyfin.org>
- Jellyfin Web unstable build ${BUILD_ID} for merged PR #${PR_ID}
EOF
    popd
fi

# build rpm
make -f fedora/Makefile srpm outdir=/root/rpmbuild/SRPMS
rpmbuild -rb /root/rpmbuild/SRPMS/jellyfin-*.src.rpm

# move the artifacts
mv /root/rpmbuild/RPMS/noarch/jellyfin-*.rpm /root/rpmbuild/SRPMS/jellyfin-*.src.rpm ${ARTIFACT_DIR}

if [[ ${IS_DOCKER} == YES ]]; then
    chown -Rc $(stat -c %u:%g ${ARTIFACT_DIR}) ${ARTIFACT_DIR}
fi

rm -f fedora/jellyfin*.tar.gz
cp -a /tmp/yarn.lock yarn.lock

popd
