Tweaks from testing

This commit is contained in:
Jim Parry 2018-11-29 00:36:57 -08:00
parent 3bd01faba1
commit f0ff1e4c3e
No known key found for this signature in database
GPG Key ID: CED549230775AD5B
9 changed files with 40 additions and 52 deletions

View File

@ -62,7 +62,8 @@ scripts used by the release manager:
moving or ignoring stuff, distinguishing release from development.
If successful, it will update the `config` file, with the version number
in it, and it will run the related scripts following, to revise
the release distributions.
the release distributions.
Usage: `admin/release version qualifier`
- **release-framework** builds the distributable framework repo.
It could be used on its own, but is normally part of `release`.
- **release-appstarter** builds the distributable appstarter repo.
@ -70,7 +71,8 @@ scripts used by the release manager:
- **release-userguide** builds the distributable userguide repo.
It could be used on its own, but is normally part of `release`.
- **release-deploy** pushes the release changes to the appropriate github
repositories. Tag & create releases on github. This is not easily reversible!
repositories. Tag & create releases on github. This is not easily reversible!
Usage: `admin/release-deploy version qualifier`
- **release-revert** can be used to restore your repositories to the state they
were in before you started a release. **IF** you haven't deployed.
This is in case you decide not to proceed with the release, for any reason.

View File

@ -53,6 +53,7 @@ sed -i "/release =/s/'.*'/'${RELEASE}'/" user_guide_src/source/conf.py
# version & date in user_guide_src/source/index.rst
sed -i "/|release|/s/|.*|/${RELEASE}/" user_guide_src/source/changelogs/index.rst
sed -i "/Release Date/s/Not Released/$(date +'%B %d, %Y')/" user_guide_src/source/changelogs/index.rst
sed -i "/|version|/s/|version|/${RELEASE}/" user_guide_src/source/changelogs/index.rst
# version & date in user_guide_src/source/next.rst
sed -i "/|release|/s/|.*|/${RELEASE}/" user_guide_src/source/changelogs/next.rst
@ -106,24 +107,24 @@ make epub
cd ${CI_DIR}
# add changelog preamble
sed '5 i Version |version|
====================================================
Release Date: Not Released
**Next release of CodeIgniter4**
:doc:`See all the changes. </changelogs/next>`
' ${TARGET}/user_guide_src/changelogs/index.rst
file=user_guide_src/source/changelogs/index.rst
sed -i "4 a Version |version|" $file
sed -i "5 a ====================================================" $file
sed -i "6 G" $file
sed -i "7 a Release Date: Not Released" $file
sed -i "8 G" $file
sed -i "9 a **Next release of CodeIgniter4**" $file
sed -i "10 G" $file
sed -i "11 G" $file
sed -i "12 a :doc:\`See all the changes. </changelogs/next>\`" $file
sed -i "13 G" $file
#---------------------------------------------------
# Build the distributables
. release-framework
. release-userguide
. release-appstarter
. admin/release-framework
. admin/release-userguide
. admin/release-appstarter
#---------------------------------------------------
# Done for now

15
admin/release-appstarter Executable file → Normal file
View File

@ -5,6 +5,7 @@
# Setup variables
. admin/release-config
TARGET=dist/appstarter
cd $TARGET
git checkout $branch
#---------------------------------------------------
@ -12,18 +13,15 @@ echo -e "${BOLD}Build the framework distributable${NORMAL}"
echo -e "${BOLD}Copy the main files/folders...${NORMAL}"
releasable='application public writable README.md contributing.md env license.txt spark'
for fff in $releasable
if [ -d $fff ]; then
rm -rf ${TARGET}/$fff
cp -rf $fff ${TARGET}/
else
rm ${TARGET}/$fff
cp -f $fff ${TARGET}/
for fff in $releasable ; do
if [ -d "$fff" ] ; then
rm -rf $fff
fi
cp -rf ${CI_DIR}/$fff .
done
echo -e "${BOLD}Override as needed...${NORMAL}"
cp -rf admin/starter/* ${TARGET}/
cp -rf ${CI_DIR}/admin/starter/* .
echo -e "${BOLD}Fix paths...${NORMAL}"
sed -i "/public $systemDirectory = 'system';/s/'system'/'vendor/codeigniter4/framework/system'/" application/Config/Paths.php
@ -31,7 +29,6 @@ sed -i "/public $systemDirectory = 'system';/s/'system'/'vendor/codeigniter4/fra
#---------------------------------------------------
# And finally, get ready for merging
echo -e "${BOLD}Assemble the pieces...${NORMAL}"
cd $TARGET
git add .
git commit -S -m "Release ${RELEASE}"
git checkout master

2
admin/release-config Executable file → Normal file
View File

@ -23,4 +23,4 @@ if [ -z "$CI_ORG" ]; then
RELEASE=$version$qualifier
branch="release-$RELEASE"
fi
fi

View File

@ -5,16 +5,6 @@
echo -e "${BOLD}${COLOR}CodeIgniter4 release deployment${NORMAL}"
echo '-------------------------------'
# Check for politeness, to avoid inadvertent deployment
if [ $# -lt 2 ]; then
echo "You forgot the magic word"
exit 1
fi
if [ $1 != 'please' ]; then
echo "What do you say?"
exit 1
fi
. admin/release-config
echo -e "${BOLD}Merge release into master${NORMAL}"

19
admin/release-framework Executable file → Normal file
View File

@ -5,6 +5,7 @@
# Setup variables
. admin/release-config
TARGET=dist/framework
cd $TARGET
git checkout $branch
#---------------------------------------------------
@ -12,27 +13,23 @@ echo -e "${BOLD}Build the framework distributable${NORMAL}"
echo -e "${BOLD}Copy the main files/folders...${NORMAL}"
releasable='application docs public system writable README.md composer.json contributing.md env license.txt spark'
for fff in $releasable
if [ -d $fff ]; then
rm -rf ${TARGET}/$fff
cp -rf $fff ${TARGET}/
else
rm ${TARGET}/$fff
cp -f $fff ${TARGET}/
for fff in $releasable ; do
if [ -d "$fff" ] ; then
rm -rf $fff
fi
cp -rf ${CI_DIR}/$fff .
done
echo -e "${BOLD}Override as needed...${NORMAL}"
cp -rf admin/framework/* ${TARGET}/
cp -rf ${CI_DIR}/admin/framework/* .
echo -e "${BOLD}Bundle the docs...${NORMAL}"
rm -rf ${TARGET}/docs
cp -rf user_guide_src/build/html ${TARGET}/docs
rm -rf docs
cp -rf ${CI_DIR}/user_guide_src/build/html ./docs
#---------------------------------------------------
# And finally, get ready for merging
echo -e "${BOLD}Assemble the pieces...${NORMAL}"
cd $TARGET
git add .
git commit -S -m "Release ${RELEASE}"
git checkout master

6
admin/release-userguide Executable file → Normal file
View File

@ -5,18 +5,18 @@
# Setup variables
. admin/release-config
TARGET=dist/userguide
cd $TARGET
git checkout $branch
#---------------------------------------------------
echo -e "${BOLD}Build the user guide distributable${NORMAL}"
cp -rf user_guide_src/build/html ${TARGET}/docs
cp -rf user_guide_src/build/epub/* ${TARGET}/
cp -rf ${CI_DIR}/user_guide_src/build/html/* docs
cp -rf ${CI_DIR}/user_guide_src/build/epub/CodeIgniter4.epub ./CodeIgniter${RELEASE}.epub
#---------------------------------------------------
# And finally, get ready for merging
echo -e "${BOLD}Assemble the pieces...${NORMAL}"
cd $TARGET
git add .
git commit -S -m "Release ${RELEASE}"
git checkout master

View File

@ -15,7 +15,7 @@ release prep (`admin/release <version> <qualifier>`)...
- prepare the distribution repos
After these have been vetted ...
- push the release to github (`admin/deploy please`)
- push the release(s) to github (`admin/release-deploy <version> <qualifier>`)
- **manually** create the releases & tag them on github, based on master
Include any supplementary binaries as part of releases.
- **manually** post a sticky announcement thread on the forum

View File

@ -25,7 +25,7 @@ The list of changed files follows, with PR numbers shown.
- form.php removed #1442
- public /
- index.php #1388
- index.php #1388, #1457
- system /
- Autoloader/
@ -294,6 +294,7 @@ PRs merged:
- #1463 Fix the remaining bcit-ci references
- #1461 Typo fix: donload -> download
- #1460 remove unneeded ternary check at HoneyPot
- #1457 use $paths->systemDirectory in public/index.php
- #1456 Beef up HTTP URI & Response testing
- #1455 un-ignore application/Database/Migrations directory
- #1454 add missing break; in loop at Email::getEncoding()