readme.adoc 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. = Salespoint Framework
  2. image:https://github.com/st-tu-dresden/salespoint/workflows/CI%20build/badge.svg["CI Build", link="https://github.com/st-tu-dresden/salespoint/actions"]
  3. == Prerequisites
  4. - Java 13
  5. - Git
  6. - Maven 3.x
  7. == Building the project
  8. .Building the project
  9. [source, bash]
  10. ----
  11. $ git clone https://github.com/st-tu-dresden/salespoint
  12. $ cd salespoint
  13. $ mvn clean install
  14. ----
  15. == Documentation
  16. The reference documentation is written in Asciidoc and built using Asciidoctor. The main documentation source file is located in `src/main/asciidoc`.
  17. To build the reference documentation simply run `mvn -Pdocs package` on the command line. This generates the following HTML files:
  18. * the Salespoint website in `target/generated-docs/index.html`.
  19. * the Salespoint reference in `target/generated-docs/salespoint-reference.html`.
  20. == Deployment
  21. To deploy artifacts to the salespoint repository, simply run `mvn clean deploy`. This requires your `settings.xml` (located in `~/.m2` ) to contain a server definition with the credentials to access the Salespoint server via SFTP:
  22. [source, xml]
  23. ----
  24. <server>
  25. <id>salespoint</id>
  26. <username>…</username>
  27. <password>…</password>
  28. </server>
  29. ----
  30. To deploy the website and reference documentation, run `mvn -Pdocs site:deploy`.
  31. == Release
  32. 1. Make sure all tickets are closed, except the release one.
  33. 2. Tweak `ChangelogCreator` (in `src/test/java`) to point to the milestone to be released. Run the creator. Copy console output into `src/main/asciidoc/site/changelog.adoc`.
  34. 3. Update version information `index.adoc` (in `src/main/asciidoc/site`).
  35. 4. Commit as `#?? - Prepare release $version.`. If this was on a maintainance branch, also cherry-pick this commit to `main` and resolve any conflicts.
  36. 5. Run `mvn release:prepare`.
  37. 6. Edit commits to match commit message format, re-create tag.
  38. 7. Push changes & tag.
  39. 8. Check out tag and run `mvn clean deploy -Prelease -DskipTests`.
  40. 10. Check out `main` and run `mvn clean package -Pdocs -Prelease`.
  41. 11. Again, check out tag and run `mvn site:deploy -Pdocs`.