diff --git a/fedora-iot.conf b/fedora-iot.conf index ff27852..0862e81 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -38,7 +38,6 @@ pkgset_source = 'koji' # koji, repos # pkgset_repos = {} # PKGSET - KOJI -#pkgset_koji_tag = 'f30-atomic' pkgset_koji_tag = 'f30-iot' pkgset_koji_inherit = False @@ -205,7 +204,7 @@ translate_paths = [ ] # These will be inherited by live_media, live_images and image_build -global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#HEAD' +global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#origin/f30' global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' global_version = '30' # live_images ignores this in favor of live_target @@ -219,9 +218,10 @@ image_build = { 'kickstart': 'fedora-iot.ks', 'distro': 'Fedora-22', 'disk_size': 4, - 'arches': ['aarch64', 'x86_64'], - 'install_tree_from': "https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/", + 'arches': ['aarch64', 'armhfp', 'x86_64'], + 'install_tree_from': "https://kojipkgs.fedoraproject.org/compose/30/latest-Fedora-30/compose/Everything/$arch/os/", 'subvariant': 'IoT', + 'failable': ['armhfp'], } } ], @@ -232,10 +232,12 @@ ostree = [ "aarch64": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", "treefile": "fedora-iot.json", - "config_url": "https://pagure.io/fedora-iot/atomic.git", - "config_branch": "master", + "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_branch": "f30", "repo": [ - "https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/" + "IoT", + "https://kojipkgs.fedoraproject.org/compose/30/latest-Fedora-30/compose/Everything/$basearch/os/", + "https://kojipkgs.fedoraproject.org/compose/updates/f30-updates/compose/Everything/$basearch/os/", ] "tag_ref": False, "ostree_repo": "/mnt/koji/compose/iot/repo/", @@ -245,10 +247,12 @@ ostree = [ "armhfp": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", "treefile": "fedora-iot.json", - "config_url": "https://pagure.io/fedora-iot/atomic.git", - "config_branch": "master", + "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_branch": "f30", "repo": [ - "https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/" + "IoT", + "https://kojipkgs.fedoraproject.org/compose/30/latest-Fedora-30/compose/Everything/$basearch/os/", + "https://kojipkgs.fedoraproject.org/compose/updates/f30-updates/compose/Everything/$basearch/os/", ] "tag_ref": False, "ostree_repo": "/mnt/koji/compose/iot/repo/", @@ -258,10 +262,12 @@ ostree = [ "x86_64": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", "treefile": "fedora-iot.json", - "config_url": "https://pagure.io/fedora-iot/atomic.git", - "config_branch": "master", + "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_branch": "f30", "repo": [ - "https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/" + "IoT", + "https://kojipkgs.fedoraproject.org/compose/30/latest-Fedora-30/compose/Everything/$basearch/os/", + "https://kojipkgs.fedoraproject.org/compose/updates/f30-updates/compose/Everything/$basearch/os/", ] "tag_ref": False, "ostree_repo": "/mnt/koji/compose/iot/repo/", @@ -275,7 +281,8 @@ ostree_installer = [ ("^IoT$", { "aarch64": { "repo": [ - "https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/" + "IoT", + "https://kojipkgs.fedoraproject.org/compose/30/latest-Fedora-30/compose/Everything/$basearch/os/", ], "release": None, "rootfs_size": "4", @@ -287,15 +294,16 @@ ostree_installer = [ "ostree_osname=fedora-iot", "ostree_oskey=fedora-iot-2019", "ostree_contenturl=mirrorlist=https://ostree.fedoraproject.org/iot/mirrorlist", - "ostree_install_ref=fedora/devel/aarch64/iot", - "ostree_update_ref=fedora/devel/aarch64/iot", + "ostree_install_ref=fedora/stable/aarch64/iot", + "ostree_update_ref=fedora/stable/aarch64/iot", ], 'template_repo': 'https://pagure.io/fedora-lorax-templates.git', - 'template_branch': 'master', + 'template_branch': 'f30', }, "armhfp": { "repo": [ - "https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/" + "IoT", + "https://kojipkgs.fedoraproject.org/compose/30/latest-Fedora-30/compose/Everything/$basearch/os/", ], "release": None, "rootfs_size": "4", @@ -307,15 +315,16 @@ ostree_installer = [ "ostree_osname=fedora-iot", "ostree_oskey=fedora-iot-2019", "ostree_contenturl=mirrorlist=https://ostree.fedoraproject.org/iot/mirrorlist", - "ostree_install_ref=fedora/devel/armhfp/iot", - "ostree_update_ref=fedora/devel/armhfp/iot", + "ostree_install_ref=fedora/stable/armhfp/iot", + "ostree_update_ref=fedora/stable/armhfp/iot", ], 'template_repo': 'https://pagure.io/fedora-lorax-templates.git', - 'template_branch': 'master', + 'template_branch': 'f30', }, "x86_64": { "repo": [ - "https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/" + "IoT", + "https://kojipkgs.fedoraproject.org/compose/30/latest-Fedora-30/compose/Everything/$basearch/os/", ], "release": None, "rootfs_size": "4", @@ -327,11 +336,11 @@ ostree_installer = [ "ostree_osname=fedora-iot", "ostree_oskey=fedora-iot-2019", "ostree_contenturl=mirrorlist=https://ostree.fedoraproject.org/iot/mirrorlist", - "ostree_install_ref=fedora/devel/x86_64/iot", - "ostree_update_ref=fedora/devel/x86_64/iot", + "ostree_install_ref=fedora/stable/x86_64/iot", + "ostree_update_ref=fedora/stable/x86_64/iot", ], 'template_repo': 'https://pagure.io/fedora-lorax-templates.git', - 'template_branch': 'master', + 'template_branch': 'f30', } }) ] diff --git a/sync-release.sh b/sync-release.sh new file mode 100755 index 0000000..65977d1 --- /dev/null +++ b/sync-release.sh @@ -0,0 +1,53 @@ +#!/bin/sh +set -x +export LC_ALL=C +LABEL=$1 +# Remove the label from arguments. It gets special treatment. Other arguments +# to the script are passed to pungi-koji directly. +shift +CONFIG="fedora-iot.conf" +TARGET_DIR="/mnt/koji/compose/iot" +NIGHTLY="" +DEST=$(pwd) +DATE=$(date "+%Y%m%d") +# the Pungi 'shortname', which we will include in fedmsgs for disambiguation +SHORT="Fedora-IoT" +RELEASE="30" +RELEASE_TITLE="30" +COMPSFILE="comps-f30.xml" +TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` +TOMAIL="iot@lists.fedoraproject.org" +FROM="Fedora IoT Report " +RSYNCPREFIX="sudo -u ftpsync" +RSYNCTARGET="/pub/alt/iot/30/" +OLDCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) + +NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) +SHORTCOMPOSE_ID=$(echo $NEWCOMPOSE_ID|sed -e 's|Fedora-.*-||g') + +DESTDIR=$TARGET_DIR/$NEWCOMPOSE_ID +# Public URL the synced compose will wind up at, we put it in fedmsgs +LOCATION="https://dl.fedoraproject.org$RSYNCTARGET" +# Update fedmsg template +#fedmsg_json_start=$(printf '{"log": "start", "branch": "%s", "arch": "%s", "short": "%s", "compose_id": "%s", "location": "%s"}' "$RELEASE" "$ARCH" "$SHORT" "$NEWCOMPOSE_ID", "$LOCATION") +#fedmsg_json_done=$(printf '{"log": "done", "branch": "%s", "arch": "%s", "short": "%s", "compose_id": "%s", "location": "%s"}' "$RELEASE" "$ARCH" "$SHORT" "$NEWCOMPOSE_ID" "$LOCATION") + +$RSYNCPREFIX mkdir -p $DESTDIR +# Tell interested persons that the rsync is starting (zomg!) +#send_fedmsg "${fedmsg_json_start}" ${RELEASE} rsync.start +for dir in IoT metadata ; + do + $RSYNCPREFIX rsync -avhH --delete-after $DESTDIR/compose/$dir/ "$RSYNCTARGET/$dir/" ; + $RSYNCPREFIX ./releng/scripts/build_composeinfo "$RSYNCTARGET/" --name $NEWCOMPOSE_ID + done +# Tell interested persons that the rsync is done. +#send_fedmsg "${fedmsg_json_done}" ${RELEASE} rsync.complete +# Tell everyone by fedmsg about the compose +#send_fedmsg "${fedmsg_json_done}" ${RELEASE} complete +#SUBJECT='Fedora IoT'$RELEASE' compose report: '$SHORTCOMPOSE_ID' changes' +#for tomail in $TOMAIL ; do +# cat $DESTDIR/logs/*verbose $DESTDIR/logs/depcheck | \ +# mutt -e "set from=\"$FROM\"" -e 'set envelope_from=yes' -s "$SUBJECT" $tomail +#done + +#find $TARGET_DIR -xdev -depth -maxdepth 2 -mtime +14 -name Fedora-IoT-${RELEASE}\* -exec rm -rf {} \; diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 1ad7f85..fb6aa3c 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -18,7 +18,7 @@ TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " RSYNCPREFIX="sudo -u ftpsync" -RSYNCTARGET="/pub/alt/iot/rawhide/" +RSYNCTARGET="/pub/alt/iot/branched/" OLDCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) # assume a releng dir is a git checkout of the releng repo @@ -49,6 +49,9 @@ if [ "$?" != "0" ]; then fi ostree summary --update --repo=/mnt/koji/compose/iot/repo/ +# Exit now we're post release +exit 1 + NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) SHORTCOMPOSE_ID=$(echo $NEWCOMPOSE_ID|sed -e 's|Fedora-.*-||g') @@ -77,4 +80,4 @@ SUBJECT='Fedora '$RELEASE' compose report: '$SHORTCOMPOSE_ID' changes' # mutt -e "set from=\"$FROM\"" -e 'set envelope_from=yes' -s "$SUBJECT" $tomail #done -find $TARGET_DIR -xdev -depth -maxdepth 2 -mtime +14 -name Fedora-IoT-${RELEASE}\* -exec rm -rf {} \; +#find $TARGET_DIR -xdev -depth -maxdepth 2 -mtime +14 -name Fedora-IoT-${RELEASE}\* -exec rm -rf {} \;