New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
#127 Provide instructions for verifying release #129
Changes from 2 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -144,6 +144,112 @@ When the vote passes on a release candidate, follow the steps below to complete | |
|
||
8. Send an email to `dev@fluo.apache.org` announcing new release. | ||
|
||
### Test a Fluo release | ||
|
||
#### Set up your environment | ||
|
||
Set up required for all tests: | ||
|
||
1. Set the release version, staging repo, and path to release Maven settings: | ||
```shell | ||
export RC_VERSION=1.2.0 | ||
export RC_STAGING=https://repository.apache.org/content/repositories/orgapachefluo-1023/ | ||
export FLUO_MAVEN=/tmp/fluo-maven.xml | ||
``` | ||
1. Create Maven settings | ||
```shell | ||
$ cat <<EOF >$FLUO_MAVEN | ||
<settings> | ||
<profiles> | ||
<profile> | ||
<id>fluoRC</id> | ||
<repositories> | ||
<repository> | ||
<id>fluorc</id> | ||
<name>fluorc</name> | ||
<url>\${env.RC_STAGING}</url> | ||
</repository> | ||
</repositories> | ||
<pluginRepositories> | ||
<pluginRepository> | ||
<id>fluorcp</id> | ||
<name>fluorcp</name> | ||
<url>\${env.RC_STAGING}</url> | ||
</pluginRepository> | ||
</pluginRepositories> | ||
</profile> | ||
</profiles> | ||
<activeProfiles> | ||
<activeProfile>fluoRC</activeProfile> | ||
</activeProfiles> | ||
</settings> | ||
EOF | ||
``` | ||
1. If a new release candidate is made, update your staging repo. | ||
```shell | ||
$ export RC_STAGING=https://repository.apache.org/content/repositories/orgapachefluo-1024/ | ||
``` | ||
|
||
Set up required to run example Fluo applications | ||
|
||
1. Clone [Uno] and fetch Fluo dependencies | ||
```shell | ||
git clone https://github.com/astralway/uno.git | ||
cd uno | ||
./bin/uno fetch fluo | ||
``` | ||
1. Download release tarball and calculate hash | ||
```shell | ||
wget -P downloads/ ${RC_STAGING}/org/apache/fluo/fluo/${RC_VERSION}/fluo-${RC_VERSION}-bin.tar.gz | ||
shasum -a 256 downloads/fluo-${RC_VERSION}-bin.tar.gz | ||
``` | ||
1. Set `FLUO_VERSION` and `FLUO_HASH` in `conf/uno.conf`. | ||
```shell | ||
vim conf/uno.conf | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. A sed command would be better here than vim instructions. |
||
``` | ||
1. Set up Fluo and your shell | ||
```shell | ||
./bin/uno setup fluo | ||
eval "$(./bin/uno env)" | ||
``` | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is there more to test here, or just testing that uno can setup fluo? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is set up instructions for uno which is need to run example applications. I pushed a commit to make this more clear |
||
|
||
### Run the integration tests of projects that use Fluo | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think this section should go after the phrasecount example with uno. It's really a separate test case, and it is breaking up the uno test case with phrasecount. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I reorganized it a little better. I move this before the the uno / phrasecount examples. |
||
|
||
1. Clone the [Fluo Recipes] project: | ||
```shell | ||
$ git clone https://github.com/apache/fluo-recipes.git | ||
``` | ||
1. Run the integration test | ||
```shell | ||
$ mvn -s $FLUO_MAVEN clean verify -Dfluo.version=$RC_VERSION | ||
``` | ||
Below are more projects with integration tests: | ||
* [Phrasecount] - `https://github.com/astralway/phrasecount.git` | ||
* [Stresso] - `https://github.com/astralway/stresso.git` | ||
* [Webindex] - `https://github.com/astralway/webindex.git` | ||
|
||
### Run Phrasecount example application | ||
|
||
1. Clone project | ||
```shell | ||
git clone https://github.com/astralway/phrasecount.git | ||
cd phrasecount | ||
``` | ||
1. Create sample data | ||
```shell | ||
mkdir data | ||
cp README.md data/README.txt | ||
``` | ||
1. Run phrasecount | ||
```shell | ||
./bin/run.sh data/ | ||
``` | ||
|
||
[Fluo Recipes]: https://github.com/apache/fluo-recipes | ||
[Phrasecount]: https://github.com/astralway/phrasecount | ||
[Uno]: https://github.com/astralway/uno | ||
[Stresso]: https://github.com/astralway/stresso | ||
[Webindex]: https://github.com/astralway/webindex | ||
[website README]: https://github.com/apache/fluo-website/blob/master/README.md | ||
[example-email]: https://lists.apache.org/thread.html/8b6ec5f17e277ed2d01e8df61eb1f1f42266cd30b9e114cb431c1c17@%3Cdev.fluo.apache.org%3E | ||
[KEYS]: https://www.apache.org/dist/fluo/KEYS | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since these instructions show using
/tmp
, there's no reason to suspect that the previous file will still exist against the new RC. It'd probably be better to just have them start over. That could simplify some of this, because there'd be no reason to put the filename in a variable, or to use\${env.RC_STAGING}
(could use$RC_STAGING
) instead... or better yet... put most of the URL in the file, and just the number in the variable.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can do that
RC_STAGING
will just be the number (i.e1023
)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the idea of using the staging repo number. I pushed a commit that does this.