From ca59c1e6a2e914529fda4c21fd43f7eba2219133 Mon Sep 17 00:00:00 2001 From: Brian (bex) Exelbierd Date: Apr 24 2018 15:02:52 +0000 Subject: Add Release Notes Packaging Guide --- diff --git a/_notes/README.md b/_notes/README.md new file mode 100644 index 0000000..bee39db --- /dev/null +++ b/_notes/README.md @@ -0,0 +1 @@ +Information about building docs diff --git a/_notes/how-to-package-release-notes.adoc b/_notes/how-to-package-release-notes.adoc new file mode 100644 index 0000000..8e65dfa --- /dev/null +++ b/_notes/how-to-package-release-notes.adoc @@ -0,0 +1,88 @@ += Building the Fedora Release Notes Package + +At the time of writing, the package was being build for Fedora 28. These directions are not pefect. Changes/Updates very welcome. + +== Prepare the HTML source files + +In a clone of pagure.io/fedora-docs/release-notes + +. Go to the master branch +. Update `_distro_map.yml` to use the correct branch for the pkg build +. Update `index-pkg.html` to use the correct version number +. Build the docs and test them + * `asciibinder package -t 0 -s pkg` + * Verify that the `en-US/entities.adoc` file is updated for the correct version number - easiest place is the wiki link on the Overview page + * Verify no blank pages are present +. Build a tar for the release source + * `cd _package/; tar -cvjf fedora-release-notes-28.01.tar.gz pkg` + +== Prepare the package, part 1 + +In a `fedpkg co fedora-release-notes` of the package + +. Copy the file created above into your working directory +. Download the current sources + * `fedpkg sources` +. Update the sources file with the new file and it's hash + * `shasum -a 512 file` ++ +[NOTE] +==== +This may be optional, as it appears this file gets updated when you run `fedpkg upload` below. Check this out. +==== +. Update the spec file + . Bump the Version + . Update the Changelog +. Try a mock build + * `fedpkg mockbuild` +. Build a src rpm + * `fedpkg srpm` +. Do a koji test build + * `koji build --scratch f28 fedora-release-notes-28.01-1.fc28.src.rpm` +. Review your changes and lint + * `fedpkg diff` + +== Make a release of the Release Notes + +. Visit https://pagure.io/fedora-docs/release-notes/ +. Upload the html source you built with asciibinder using the specfile version number for the filename: 28.01.tgz ++ +NOTE: The release will not show up immediately, however it is uploaded so you should be able to move to the next step without waiting. + +== Prepare the package, part 2 +. Lint your specfile + * `fedpkg lint` ++ +[NOTE] +==== +At the time of writing, the linter generated the following output, which seemed to be ignorable: +---- +$ fedpkg lint +No rpm found +fedora-release-notes/fedora-release-notes.spec: W: invalid-url Source1: fedora-release-notes-icons.tar.xz +fedora-release-notes.src: W: invalid-url Source1: fedora-release-notes-icons.tar.xz +1 packages and 1 specfiles checked; 0 errors, 2 warnings. +---- +==== +. Stage your spec file + * `git add fedora-release-notes.spec` +. Upload your new source file + * `fedpkg upload fedora-release-notes-28.01.tar.gz` +. Commit and Push your changes + * `fedpkg commit -p -c` +. If the package is not already branched: See: https://src.fedoraproject.org/rpms/fedora-release-notes + . Verify that your pagure token is current in `~/.config/rpkg/fedpkg.conf` - they expire every 60 days + * see: https://pagure.io/settings + . Now request a branch - This opens a ticket so chill for a bit + * `fedpkg request-branch f28` + . When your ticket is completed update your repo to get the new branch to be visible + * `fedpkg pull` +. Change to the release branch + * `fedpkg switch-branch f28` +. Merge in your changes + * `git merge master` +. Push to the version branch + * `fedpkg push` +. Request a build + * `fedpkg build` +. Monitor the build and you should be done