mirror of
https://github.com/wallabag/wallabag.git
synced 2025-01-11 17:35:25 +00:00
Merge pull request #3985 from wallabag/update-composer
Keep composer.lock
This commit is contained in:
commit
e9579d6de9
5 changed files with 10446 additions and 31 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -43,9 +43,6 @@ data/db/wallabag*.sqlite
|
||||||
docker/logs/
|
docker/logs/
|
||||||
docker/data/
|
docker/data/
|
||||||
|
|
||||||
# To avoid crazy stuff on some PR, we must manually FORCE ADD IT on each new release
|
|
||||||
composer.lock
|
|
||||||
|
|
||||||
# assets stuff
|
# assets stuff
|
||||||
node_modules/
|
node_modules/
|
||||||
bin
|
bin
|
||||||
|
|
|
@ -22,58 +22,42 @@ During this documentation, we assume the release is `$LAST_WALLABAG_RELEASE` (li
|
||||||
git checkout master
|
git checkout master
|
||||||
git pull origin master
|
git pull origin master
|
||||||
git checkout -b release-$LAST_WALLABAG_RELEASE
|
git checkout -b release-$LAST_WALLABAG_RELEASE
|
||||||
SYMFONY_ENV=prod composer up --no-dev
|
composer up
|
||||||
```
|
|
||||||
|
|
||||||
- Update `.travis.yml` file and replace the composer line with this one:
|
|
||||||
|
|
||||||
```diff
|
|
||||||
script:
|
|
||||||
- - travis_wait bash composer install -o --no-interaction --no-progress --prefer-dist
|
|
||||||
+ - travis_wait bash composer update -o --no-interaction --no-progress --prefer-dist
|
|
||||||
```
|
```
|
||||||
|
|
||||||
- Then continue with these commands:
|
- Then continue with these commands:
|
||||||
|
|
||||||
```
|
```
|
||||||
git add --force composer.lock .travis.yml
|
git add composer.lock
|
||||||
git commit -m "Release wallabag $LAST_WALLABAG_RELEASE"
|
git commit -m "Release wallabag $LAST_WALLABAG_RELEASE"
|
||||||
git push origin release-$LAST_WALLABAG_RELEASE
|
git push origin release-$LAST_WALLABAG_RELEASE
|
||||||
```
|
```
|
||||||
|
|
||||||
- Create a new pull request with this title `DON'T MERGE Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
|
- Create a new pull request with this title `Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
|
||||||
- Run these command to create the package:
|
- Once PR is green, merge it and delete the branch.
|
||||||
|
- Run this command to create the package:
|
||||||
|
|
||||||
```
|
```
|
||||||
make release VERSION=$LAST_WALLABAG_RELEASE
|
make release VERSION=$LAST_WALLABAG_RELEASE
|
||||||
```
|
```
|
||||||
|
|
||||||
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new) by targetting the `release-$LAST_WALLABAG_RELEASE` branch. You have to upload the package (generated previously).
|
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new) by targetting the `master` branch or any appropriate branch (for instance backports). You have to upload the package (generated previously).
|
||||||
- Close the previously created pull request (**DO NOT MERGE IT**) and delete the `release-$LAST_WALLABAG_RELEASE` branch.
|
- Update the URL shortener (used on `wllbg.org` to update links like `https://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
|
||||||
- Update the URL shortener (used on `wllbg.org` to generate links like `https://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
|
|
||||||
- Update Dockerfile https://github.com/wallabag/docker (and create a new tag)
|
- Update Dockerfile https://github.com/wallabag/docker (and create a new tag)
|
||||||
- Update wallabag.org website (downloads, MD5 sum, releases and new blog post)
|
- Update wallabag.org website (downloads, MD5 sum, releases and new blog post)
|
||||||
- Put the next patch version suffixed with `-dev` in `app/config/wallabag.yml` (`wallabag_core.version`)
|
- Put the next patch version suffixed with `-dev` in `app/config/wallabag.yml` (`wallabag_core.version`)
|
||||||
- Drink a :beer:!
|
- Drink a :beer:!
|
||||||
|
|
||||||
### `composer.lock`
|
|
||||||
A release tag must contain a `composer.lock` file. It sets which dependencies were available at the time a release was done,
|
|
||||||
making it easier to fix issues after the release. It also speeds up `composer install` on stable versions a LOT, by skipping the
|
|
||||||
dependencies resolution part.
|
|
||||||
|
|
||||||
Since `composer.lock` is ignored by default, either it must be removed from `.gitignore` _in the release branch_,
|
|
||||||
or it must be added using `git add --force composer.lock`.
|
|
||||||
|
|
||||||
### Target PHP version
|
### Target PHP version
|
||||||
`composer.lock` is _always_ built for a particular version, by default the one it is generated (with `composer update`).
|
`composer.lock` is _always_ built for a particular version, by default the one it is generated (with `composer update`).
|
||||||
|
|
||||||
If the PHP version used to generate the .lock isn't a widely available one (like PHP 7), a more common one should
|
If the PHP version used to generate the .lock isn't a widely available one (like PHP 8), a more common one should
|
||||||
be locally specified in `composer.lock`:
|
be locally specified in `composer.lock`:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
"config": {
|
"config": {
|
||||||
"platform": {
|
"platform": {
|
||||||
"php": "5.5.9",
|
"php": "7.1.3",
|
||||||
"ext-something": "4.0"
|
"ext-something": "4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
wallabag_core:
|
wallabag_core:
|
||||||
version: 2.3.8
|
version: 2.4.0-dev
|
||||||
paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
|
paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
|
||||||
languages:
|
languages:
|
||||||
en: 'English'
|
en: 'English'
|
||||||
|
|
10434
composer.lock
generated
Normal file
10434
composer.lock
generated
Normal file
File diff suppressed because it is too large
Load diff
|
@ -9,8 +9,8 @@ ENV=$4
|
||||||
|
|
||||||
rm -rf $TMP_FOLDER/$RELEASE_FOLDER
|
rm -rf $TMP_FOLDER/$RELEASE_FOLDER
|
||||||
mkdir $TMP_FOLDER/$RELEASE_FOLDER
|
mkdir $TMP_FOLDER/$RELEASE_FOLDER
|
||||||
git clone git@github.com:wallabag/wallabag.git -b release-$VERSION $TMP_FOLDER/$RELEASE_FOLDER/$VERSION
|
git clone git@github.com:wallabag/wallabag.git $TMP_FOLDER/$RELEASE_FOLDER/$VERSION
|
||||||
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && SYMFONY_ENV=$ENV COMPOSER_MEMORY_LIMIT=-1 composer up -n --no-dev
|
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && SYMFONY_ENV=$ENV COMPOSER_MEMORY_LIMIT=-1 composer install -n --no-dev
|
||||||
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console wallabag:install --env=$ENV -n
|
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console wallabag:install --env=$ENV -n
|
||||||
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console assets:install --env=$ENV --symlink --relative
|
cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console assets:install --env=$ENV --symlink --relative
|
||||||
cd $TMP_FOLDER/$RELEASE_FOLDER && tar czf wallabag-$VERSION.tar.gz --exclude="var/cache/*" --exclude="var/logs/*" --exclude="var/sessions/*" --exclude=".git" $VERSION
|
cd $TMP_FOLDER/$RELEASE_FOLDER && tar czf wallabag-$VERSION.tar.gz --exclude="var/cache/*" --exclude="var/logs/*" --exclude="var/sessions/*" --exclude=".git" $VERSION
|
||||||
|
|
Loading…
Reference in a new issue