index : releng | |
Archlinux32 release engineering | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | README.md | 2 | ||||
-rw-r--r-- | al32-mktorrent.sh | 7 | ||||
-rw-r--r-- | magnet2feed.py | 30 |
@@ -23,7 +23,7 @@ If no date is specified, the script will prompt for a date during the process. * [ ] Upload the torrent file to a server via SSH (for sharing) * [ ] Upload the torrent to transmission-server * [ ] Inform the world of the new torrent file - * [ ] Add the magnet link to a RSS feed + * [x] Add the magnet link to a RSS feed * [ ] Upload the new RSS feed to the server * [ ] Send an email to the arch-ports list diff --git a/al32-mktorrent.sh b/al32-mktorrent.sh index 1103364..3fdb196 100644 --- a/al32-mktorrent.sh +++ b/al32-mktorrent.sh @@ -103,5 +103,10 @@ fi mktorrent --announce=http://dopsi.ch:6969/announce --web-seed="$(join_by ',' "${available_mirrors[@]}")" "$iso_string" echo -e "$fg_reset${fg_bold}Create magnet link...$fg_reset" -transmission-show --magnet "$iso_string.torrent" +magnet_link="$(transmission-show --magnet "$iso_string.torrent")" +echo "$magnet_link" + +echo -e "$fg_reset${fg_bold}Create RSS feed files...$fg_reset" +python magnet2feed.py "$magnet_link" "$iso_date" + # vim: set ts=4 sw=4: diff --git a/magnet2feed.py b/magnet2feed.py new file mode 100644 index 0000000..5dc767f --- /dev/null +++ b/magnet2feed.py @@ -0,0 +1,30 @@ +from feedgenerator import Rss201rev2Feed +import sys +from os.path import basename + +feed_url = 'https://static.dopsi.ch/al32/feed_{arch}.rss' +architectures = ['i686', 'dual'] + + +def main(link, date): + for arch in architectures: + feed = Rss201rev2Feed(title='ArchLinux32 torrent download feed ({arch} ISO)'.format(arch=arch), + link=feed_url, + description="A torrent feed to download the latest ArchLinux32 {arch} iso".format( + arch=arch + ), + language='en') + + feed.add_item(title='ArchLinux32 {arch} {date}'.format(arch=arch, date=date), + link=link, + description='ArchLinux32 {arch} {date}'.format(arch=arch, date=date)) + + with open(basename(feed_url).format(arch=arch), mode='w') as feed_file: + feed.write(feed_file, 'utf-8') + + +if __name__ == '__main__': + if len(sys.argv) != 3: + print('Error: {cmd} magnet date'.format(cmd=sys.argv[0])) + + main(link=sys.argv[1], date=sys.argv[2]) |