Once a release candidate has been staged to https://dist.apache.org/repos/dist/dev/incubator/edgent it must be validated and voted on in order to proceed.

Team members must do the following.  Only the Release Manager need perform the items tagged with '[RM]' though all are encouraged to.

  1. download staged artifacts. Check their signature and hashes.
    1. cd ~/tmp
    2. .../buildTools/download_edgent_asf.sh 1.2.0 1  # <version> <rc-num>
    3. [RM] verify the reported signature is for an "apache.org" address ("gpg: Good signature from ...")
  2. extract src bundle
    1. cd downloaded-edgent-1.2.0rc1
    2. tar zxf 1.2.0-incubating/rc1/apache-edgent-1.2.0-incubating-source-release.tar.gz

    3. [RM] verify the bundle names have "incubating" in them

    4. [RM] verify the staged source README, RELEASE_NOTE files correspond to those in the extracted source bundle
      1. note: download_edgent_asf.sh verified the zip and tar.gz bundles have the same content
  3. staged src bundle items: content, can compile & test
    1. cd apache-edgent-1.2.0-incubating
    2. check DISCLAIMER, LICENSE, NOTICE, README, RELEASE_NOTES
    3. ... build from directions in README – SKIP TESTS for this step
    4. [RM] review target/rat.txt (though the build should fail if RAT constraints aren't met)
      1. review for B (binary) content:   grep " B " target/rat.txt
    5. ./mvnw install --fail-at-end # run the tests too
      1. the tests should all pass, except for possible "timing sensitive" tests
    6. NOTE: can't do this in a source-bundle (only in a repo) ./mvnw site:site  # generate reports
      1. the tests should all pass, except for possible "timing sensitive" tests
      2. skipped tests should only include: Kafka connectors, and on OSX testDirectoryWatcherOrderWithDelete
      3. review the test report to verify build/distributions/reports/tests/index.html
  4. TODO: staged jars/wars in Nexus - see EDGENT-440
    1. [RM] We're currently lacking a way to download all of the staged jars to verify them. For now, verify the jars that were uploaded from the management clone used to create the RC
      1. cd mgmt-edgent-X.Y.Z; buildTools/check_jars.sh --findmode build-release X.Y.Z target/checkout
  5. run samples via the scripts, including one that supports the Edgent console
    1. follow the directions in incubator-edgent-samples/README.md and
      1. clone
      2. check / adjust the pom for this new Edgent version
        1. update-samples-version.sh --edgent-version X.Y.Z    #  (QUESTION: how to force it to use the staged RC's repository/jars?)
      3. build
      4. run HelloEdgent
    2. then...
      1. cd incubator-edgent-samples
      2. (cd topology; ./run-sample.sh SensorsAggregates)  # has Edgent console.  verify it can be started and looks sensible and metric charts are updating
      3. [RM] should run most/all other samples

 

  • No labels