Finished migration to Git and the build system
* Added web interface packaging * Added documentation about the development workflow
This commit is contained in:
parent
0665a760de
commit
f682594cbd
5 changed files with 143 additions and 3 deletions
60
legacyworlds-web-DIST/pom.xml
Normal file
60
legacyworlds-web-DIST/pom.xml
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<parent>
|
||||||
|
<artifactId>legacyworlds-web</artifactId>
|
||||||
|
<groupId>com.deepclone.lw</groupId>
|
||||||
|
<version>1.0.0</version>
|
||||||
|
<relativePath>../legacyworlds-web/pom.xml</relativePath>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<artifactId>legacyworlds-web-DIST</artifactId>
|
||||||
|
<version>${legacyworlds.version.main}.${legacyworlds.version.release}-${legacyworlds.version.build}</version>
|
||||||
|
|
||||||
|
<packaging>pom</packaging>
|
||||||
|
<name>Legacy Worlds - Web - Packaging</name>
|
||||||
|
<description>This Maven module is responsible for creating the Legacy Worlds web interface's packaging.</description>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Depend on both WAR projects -->
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.deepclone.lw</groupId>
|
||||||
|
<artifactId>legacyworlds-web-main</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<type>war</type>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.deepclone.lw</groupId>
|
||||||
|
<artifactId>legacyworlds-web-admin</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<type>war</type>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<!-- Use the assembly plug-in to generate the distribution -->
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>distribution-assembly</id>
|
||||||
|
<phase>package</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>single</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<attach>false</attach>
|
||||||
|
<finalName>legacyworlds-web-${project.version}</finalName>
|
||||||
|
<descriptors>
|
||||||
|
<descriptor>src/web.xml</descriptor>
|
||||||
|
</descriptors>
|
||||||
|
<appendAssemblyId>false</appendAssemblyId>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
28
legacyworlds-web-DIST/src/web.xml
Normal file
28
legacyworlds-web-DIST/src/web.xml
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<assembly
|
||||||
|
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
|
||||||
|
|
||||||
|
<!-- Legacy Worlds web interface assembly -->
|
||||||
|
|
||||||
|
<id>legacyworlds-web</id>
|
||||||
|
<formats>
|
||||||
|
<format>dir</format>
|
||||||
|
</formats>
|
||||||
|
<includeBaseDirectory>false</includeBaseDirectory>
|
||||||
|
|
||||||
|
<dependencySets>
|
||||||
|
|
||||||
|
<dependencySet>
|
||||||
|
<useProjectArtifact>false</useProjectArtifact>
|
||||||
|
<outputDirectory>.</outputDirectory>
|
||||||
|
<unpack>false</unpack>
|
||||||
|
<includes>
|
||||||
|
<include>*:war</include>
|
||||||
|
</includes>
|
||||||
|
</dependencySet>
|
||||||
|
|
||||||
|
</dependencySets>
|
||||||
|
|
||||||
|
</assembly>
|
|
@ -17,6 +17,7 @@
|
||||||
<module>../legacyworlds-web-main</module>
|
<module>../legacyworlds-web-main</module>
|
||||||
<module>../legacyworlds-web-admin</module>
|
<module>../legacyworlds-web-admin</module>
|
||||||
<module>../legacyworlds-web-beans</module>
|
<module>../legacyworlds-web-beans</module>
|
||||||
|
<module>../legacyworlds-web-DIST</module>
|
||||||
</modules>
|
</modules>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -8,8 +8,6 @@ NOTES:
|
||||||
|
|
||||||
PROJECT:
|
PROJECT:
|
||||||
|
|
||||||
! Write the new build system
|
|
||||||
|
|
||||||
* Update all dependencies to the latest versions
|
* Update all dependencies to the latest versions
|
||||||
|
|
||||||
|
|
||||||
|
|
53
legacyworlds/doc/workflow.txt
Normal file
53
legacyworlds/doc/workflow.txt
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
Legacy Worlds development work flow
|
||||||
|
====================================
|
||||||
|
|
||||||
|
Development is based off a set of Git repositories on the web-based repository
|
||||||
|
server. All repositories can be found under https://svn.legacyworlds.com/git/
|
||||||
|
|
||||||
|
|
||||||
|
Repositories
|
||||||
|
-------------
|
||||||
|
|
||||||
|
* Developer repositories: each developer has access to a personal repository,
|
||||||
|
under dev/{developer name} on the server. All developers have read access to
|
||||||
|
the others' repositories.
|
||||||
|
|
||||||
|
Address: https://svn.legacyworlds.com/git/dev/{developer name}
|
||||||
|
|
||||||
|
* Staging repository: this repository is meant to be used as the source for
|
||||||
|
all local repositories. All developers may read from it. However, only
|
||||||
|
TSeeker can push code to it.
|
||||||
|
|
||||||
|
Address: https://svn.legacyworlds.com/git/staging
|
||||||
|
|
||||||
|
* Main repository: this repository contains the code that has been processed
|
||||||
|
by the build system, along with the binaries if the last build succeeded.
|
||||||
|
While all developers can read from it, it should not be used as the source
|
||||||
|
for local copies.
|
||||||
|
|
||||||
|
Address: https://svn.legacyworlds.com/git/main
|
||||||
|
|
||||||
|
|
||||||
|
Branches
|
||||||
|
---------
|
||||||
|
|
||||||
|
On the staging and main repositories, the following branches exist:
|
||||||
|
|
||||||
|
* master - this is the main development branch. All code destined to end up
|
||||||
|
in the next version of Legacy Worlds lives there.
|
||||||
|
|
||||||
|
* milestone1 - maintenance branch for Legacy Worlds Beta 6 milestone 1.
|
||||||
|
|
||||||
|
|
||||||
|
Development process
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
Work on some branch on your local copy.
|
||||||
|
-> Don't hesitate to push to your developer repository on the server
|
||||||
|
as a means of backup.
|
||||||
|
-> Rebase to the original branch whenever it changes.
|
||||||
|
|
||||||
|
When you are done with your work on a branch:
|
||||||
|
1) push to some branch on your developer repository on the server,
|
||||||
|
2) notify TSeeker that the branch should be pulled to the staging repository.
|
||||||
|
While this is easier to handle on IRC, a mail is fine as well.
|
Reference in a new issue