Deployment methods
OpooPress supports many deployment methods by Apache Maven Wagon.
1. Common Deployment Methods
- File
- HTTP
- FTP
- SSH/SCP
- WebDAV
- GitHub Pages/Git
1.1 File
- Set
deploy_server
inconfig.yml
deploy_server: {id: "file", url: "file://var/www/html"}
- Run
mvn op:deploy
1.2 HTTP
- Set
deploy_server
inconfig.yml
deploy_server: {id: "my_http_server", url: "http://domain.com/var/www/html"}
- Update maven
settings.xml
<server> <id>my_http_server</id> <username>my_server_username</username> <password>my_server_password</password> <server>
- Run
mvn op:deploy
1.3 FTP
- Set
deploy_server
inconfig.yml
deploy_server: {id: "my_ftp_server", url: "ftp://host/var/www/html"}
- Update maven
settings.xml
<server> <id>my_ftp_server</id> <username>my_server_username</username> <password>my_server_password</password> <server>
- Run
mvn op:deploy
1.4 SSH/SCP
- Set
deploy_server
inconfig.yml
deploy_server: {id: "my_server", url: "scp://host/var/www/html"}
- Update maven
settings.xml
<server> <id>my_server</id> <username>my_server_username</username> <password>my_server_password</password> <server>
- Run
mvn op:deploy
Deploying to sourceforge.net
OpooPress have the same deployment methods as maven-site-plugin, so there is a same problem, click here for details.
1.5 WebDAV
- Set
deploy_server
inconfig.yml
deploy_server: {id: "my_web_server", url: "https://domain.com/var/www/html"}
- Update maven
settings.xml
<server> <id>my_web_server</id> <username>my_server_username</username> <password>my_server_password</password> <server>
- Run
mvn op:deploy
1.6 GitHub Pages/Git
There are THREE methods to deploy OpooPress to GitHub Pages:
- using custom
wagon: opoopress-wagon-github
- using custom
wagon: opoopress-wagon-git
- using wagon
wagon-scm
and scm-providermaven-scm-provider-gitexe
And there are TWO methods to deploy OpooPress to normal Git repositories:
- using custom
wagon: opoopress-wagon-git
- using wagon
wagon-scm
and scm-providermaven-scm-provider-gitexe
2. Other Deployment Methods
Because OpooPress uses Apache Maven Wagon as lower level layer of the deployment, so typically, any wagon can used for OpooPress deployment.
Just follow these steps:
Configure
extension
node inpom.xml
, such as:<build> <extensions> <extension> <groupId>com.github.myname</groupId> <artifactId>wagon-myhttps</artifactId> <version>2.4</version> </extension> <extension> <groupId>org.apache.maven.wagon</groupId> <artifactId>wagon-scm</artifactId> <version>2.4</version> </extension> <extension> <groupId>org.apache.maven.scm</groupId> <artifactId>maven-scm-manager-plexus</artifactId> <version>1.5</version> </extension> <extension> <groupId>org.apache.maven.scm</groupId> <artifactId>maven-scm-provider-svnexe</artifactId> <version>1.5</version> </extension> </extensions> </build>
here assume
wagon-myhttps
is a custom wagon, and support URL protocolmyhttps
.wagon-scm
andmaven-scm-provider-svnexe
are provided by Apache.Set
deploy_server
inconfig.yml
deploy_server: {id: "myhttps_server", url: "myhttps://domain.com/path/to/www", param1: "val1", param2: "val2"}
or
deploy_server: {id: "my_svn_server", url: "scm:svn:https://domain.com/svnrepo"}
Update maven
settings.xml
Configure
server
node insettings.xml
according to the wagon what you used. Some wagon need configure aconfiguration
node inserver
. For example, if you usewagon-scm
andmaven-scm-provider-svnexe
to deploy your OpooPress, you need configurescmVersionType
andscmVersion
to specify the branch of SVN repository.<server> <id>my_svn_server</id> <username>my_username</username> <password>my_password</password> <configuration> <scmVersionType>branch</scmVersionType> <scmVersion>branch-1.0.x</scmVersion> </configuration> </server>