Skip to content

Commit 8c36453

Browse files
committed
Additional preparation for a release.
1 parent 2cefadc commit 8c36453

File tree

10 files changed

+107
-127
lines changed

10 files changed

+107
-127
lines changed

aima-all/.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,6 @@
11
/bin/
2+
/build/
3+
# Mac specific
4+
.DS_Store
5+
.AppleDouble
6+
.LSOverride

aima-all/README.md

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# AIMA3e-Java aima-all
2+
This project is used solely for creating combined releases of all of the AIMA3e projects.
3+
4+
## CHECK LIST FOR CREATING A AIMA3e-JAVA RELEASE
5+
6+
### Create the Release
7+
* Checkout the latest version of all the projects into a clean workspace.
8+
* Ensure the revisions # in the build.properties files of each project are updated.
9+
* Ensure the revision #s in the pom.xml file in aima-core is set to match the one in
10+
build.properties.
11+
* Ensure the README.txt file in each project is updated to reflect the release (i.e.
12+
update the 'Current Release' section at a minimum).
13+
* Commit changes to SVN server for each project updated.
14+
* run the aima-all.release ant task from the aima-all project.
15+
16+
### Update the JavaDoc
17+
* Upload the latest version of the aima-core Javadoc:<br>
18+
This can be done by running the aima-core.makedocs ant task and replacing
19+
the current generated docs in the `gh-pages` branch:<br>
20+
`aima3e/javadoc/aima-core`
21+
* push the changes to the `gh-pages` branch.
22+
23+
### Update the Java Web Start Applications
24+
25+
* Copy the .jar files generated by the aima-all.release ant task from:<br>
26+
`aima-all/build/release/release` <br>
27+
to the `gh-pages` branch:<br>
28+
`aima3e/jars`
29+
* push the changes to the `gh-pages` branch.
30+
31+
* Create a keystore which will be used to sign the copied jars, e.g.:
32+
```
33+
> keytool -genkey -keystore c:/temp/aima3e.keystore -alias aima3e
34+
35+
> Enter keystore password: <Enter an appropriate password>
36+
> Re-enter new password: <Same password>
37+
> What is your first and last name?
38+
[Unknown]: <Your Name>
39+
> What is the name of your organizational unit?
40+
[Unknown]: AIMA-Java Open Source Project
41+
> What is the name of your organization?
42+
[Unknown]: AIMA-Java Open Source Project
43+
> What is the name of your City or Locality?
44+
[Unknown]: Mountain View
45+
> What is the name of your State or Province?
46+
[Unknown]: California
47+
> What is the two-letter country code for this unit?
48+
[Unknown]: US
49+
> ...
50+
[no]: yes
51+
```
52+
* Sign each jar individually, e.g.:
53+
```
54+
> jarsigner -keystore c:/temp/aima3e.keystore aima-core.jar aima3e
55+
> jarsigner -keystore c:/temp/aima3e.keystore aima-gui.jar aima3e
56+
> jarsigner -keystore c:/temp/aima3e.keystore aimax-osm.jar aima3e
57+
> jarsigner -keystore c:/temp/aima3e.keystore commons-compress-1.1.jar aima3e
58+
```
59+
* push the changes to the `gh-pages` branch.
60+
61+
### Publish the Release to the Maven Central Repository
62+
#### Relevant Background:
63+
* [Deploying via Nexus Guide](http://central.sonatype.org/pages/ossrh-guide.html)
64+
* [The Sonatype/Nexus Open Source Respository](https://oss.sonatype.org/)
65+
* [The Complete Maven Reference](http://www.sonatype.com/books/mvnref-book/reference/public-book.html)
66+
* [The Maven Central Repository](http://search.maven.org/)
67+
* [Maven Home](http://maven.apache.org/)
68+
69+
#### Publish to Maven Central
70+
* Run this command in the aima-core project (currently only releasing this on Maven):<br>
71+
`mvn -P sonatype-oss-release deploy`
72+
* Close and Release. [Follow Releasing to Central from](http://central.sonatype.org/pages/ossrh-guide.html)
73+
74+
## Publish the Release to the AIMA Website
75+
* Upload the .zip file from aima-all/build/release to the project's releases page. Delete the previous release.
76+
* Update the AIMA3e `README.md` to indicate the latest revision # (ensure Maven info also updated).
77+
* Update the `AIMA3e Overview` wiki page with the latest release information.
78+
* Send an email to team members letting them know the release has gone out the door.

aima-all/ReleaseCheckList.txt

Lines changed: 0 additions & 120 deletions
This file was deleted.

aima-all/build.xml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,14 @@
2323
</target>
2424

2525
<target name="aima-all.release" depends="aima-all.makedirs,aima-core.release,aima-gui.release,aimax-osm.release">
26-
<copy todir="${aima-all.dir.build.release}" file="README.txt" />
2726
<copy todir="${aima-all.dir.build.release}/aima-core">
28-
<fileset dir="${path.to.aima-core.project}" excludes="**/*.svn, build/, bin/" />
27+
<fileset dir="${path.to.aima-core.project}" excludes="**/*.git, .gitignore, build/, bin/" />
2928
</copy>
3029
<copy todir="${aima-all.dir.build.release}/aima-gui">
31-
<fileset dir="${path.to.aima-gui.project}" excludes="**/*.svn, build/ bin/" />
30+
<fileset dir="${path.to.aima-gui.project}" excludes="**/*.git, .gitignore, build/ bin/" />
3231
</copy>
3332
<copy todir="${aima-all.dir.build.release}/aimax-osm">
34-
<fileset dir="${path.to.aimax-osm.project}" excludes="**/*.svn, build/ bin/" />
33+
<fileset dir="${path.to.aimax-osm.project}" excludes="**/*.git, .gitignore, build/ bin/" />
3534
</copy>
3635
<copy todir="${aima-all.dir.build.release}/release">
3736
<fileset dir="${aima-core.dir.build.release}" />

aima-core/.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,8 @@
11
/bin/
2+
/build/
3+
/target/
4+
5+
# Mac Specific
6+
.DS_Store
7+
.AppleDouble
8+
.LSOverride

aima-core/build.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@
7979
<attribute name="AIMA-CORE-Version" value="${aima-core.version}" />
8080
</manifest>
8181
<fileset dir="${aima-core.dir.build.bin}/main" />
82-
<fileset dir="${aima-core.dir.src}/main/resources" excludes="**/*.svn" />
82+
<fileset dir="${aima-core.dir.src}/main/resources" excludes="**/*.git, .gitignore" />
8383
</jar>
8484
</target>
8585

aima-gui/.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,7 @@
11
/bin/
2+
/build/
3+
4+
# Mac Specific
5+
.DS_Store
6+
.AppleDouble
7+
.LSOverride

aima-gui/build.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@
5858
<attribute name="AIMA-GUI-Version" value="${aima-gui.version}" />
5959
</manifest>
6060
<fileset dir="${aima-gui.dir.build.bin}/main" />
61-
<fileset dir="${aima-gui.dir.src}/main/resources" excludes="**/*.svn" />
6261
</jar>
6362
</target>
6463

aimax-osm/.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,7 @@
11
/bin/
2+
/build/
3+
4+
# Mac Specific
5+
.DS_Store
6+
.AppleDouble
7+
.LSOverride

aimax-osm/build.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
<attribute name="AIMAX-OSM-Version" value="${aimax-osm.version}" />
6060
</manifest>
6161
<fileset dir="${aimax-osm.dir.build.bin}/main" />
62-
<fileset dir="${aimax-osm.dir.src}/main/resources" excludes="**/*.svn" />
62+
<fileset dir="${aimax-osm.dir.src}/main/resources" excludes="**/*.git, .gitignore" />
6363
</jar>
6464
<copy todir="${aimax-osm.dir.build.release}" file="${aimax-osm.dir.lib}/commons-compress-1.1.jar" />
6565
</target>

0 commit comments

Comments
 (0)