Arena is currently being developed in Scala Language. Here a list of requirements in order to setup a working environment to start working in Arena development (note that these are not instructions to "use" Arena, but to extend it of change it)
Note: We are currently working on it, but we still don't have a C.I. in order to deploy new versions of artifacts every time someone pushes a change to master. So, this means that, every time you push something, you'll also need to manually deploy it following this instructions (sorry, they are in spanish)
It's useful to create a folder to hold all the repos (projects), but well, optional:
mkdir arena cd arena
The main repository is here
In order to check them out:
git clone https://github.com/uqbar-project/arena
Check-out:
git clone https://github.com/uqbar-project/uqbar-domain
arena-xtend is in Arena repository.
If you'll work on the transactional or observability aspects behind Arena, you must download the following projects:
In addition you can checkout some parent projects if you need to change them:
git clone https://github.com/uqbar-project/uqbar-parent-project git clone https://github.com/uqbar-project/uqbar-scala-parent
As we use maven, you can use whatever IDE you want. Although, we can suggest some proven environment:
The proven environment is based on Eclipse Neon version. Here's a sample environment
This site was built with Maven APT (Almost plain text) technology. Page sources are located in Arena Core site folder, then you must follow its format.
You can download APT plugin for Eclipse here.
After adding, changing or removing pages, you can test them locally by doing
mvn site:site
Site is generated according to Maven site plugin, and you can browse html files in arena-core project, file: target/site/index.html
When all changes are ready, you can publish the local site with
mvn site:deploy
You need to configure your maven settings in order to connect to Uqbar's repositories, both to retrieve artifacts, but also to deploy new versions:
File ~/.m2/settings.xml (if .m2 folder is not already created, then create it)
#!xml <settings 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/settings-1.0.0.xsd"> <servers> <server> <id>uqbar-releases</id> <username>mvn@uqbar-wiki.org</username> <password>PASSWORD_HERE</password> </server> <server> <id>uqbar-snapshots</id> <username>mvn@uqbar-wiki.org</username> <password>repomaven88</password> </server> <server> <id>sites-uqbar-project.org</id> <username>sites@uqbar-wiki.org</username> <password>PASSWORD_HERE</password> </server> </servers> <profiles> <profile> <id>uqbar-wiki</id> <repositories> <repository> <id>uqbar-wiki.org-releases</id> <name>uqbar-wiki.org-releases</name> <url>http://uqbar-wiki.org/mvn/releases</url> </repository> <repository> <snapshots/> <id>uqbar-wiki.org-snapshots</id> <name>uqbar-wiki.org-snapshots</name> <url>http://uqbar-wiki.org/mvn/snapshots</url> </repository> </repositories> </profile> </profiles> <activeProfiles> <activeProfile>uqbar-wiki</activeProfile> </activeProfiles> </settings>
NOTE THAT YOU MUST ASK SOME UQBAR MEMBER FOR THE PASSWORD AND REPLACE THERE THE "PASSWORD_HERE"