Optionsfile documentation for ODK Aggregate Installer

What is the problem? Please be detailed.

Configuring CI engine for automated builds of ODK Aggregate WAR file. I am looking for documentation regarding running the ODK Aggregate Installer that builds the WAR file in an unattendedmode.

Interesting switches to me look like:

  • unattendedmodeui
  • optionfile
  • mode

Any documentation related to building the WAR file unprompted would be helpful. I am unable to locate it.

What ODK tool and version are you using? And on what device and operating system version?


Will be installing using Postgres and Tomcat 8. SSL is offloaded to Apache.

What steps can we take to reproduce the problem?

Search for "odk aggregate installer optionfile" or other parameters. Browsing the user documentation is very GUI and manual setup oriented.

What you have you tried to fix the problem?

I have tried to find documentation. I have started experimenting with the switches, but would prefer just to read documentation prior to spending time guessing.

Anything else we should know or have? If you have a test form or screenshots or logs, attach here.

Hi John! We are in the middle of some changes to Aggregate that should make all this easier. We need help with that effort and if you'd like to chip, please read ODK Aggregate future plans and comment there.

As to the problem at hand, what I've done in the past to generate unattended installs for MySQL and Tomcat is this..

command: "{{ all_tmp_dir }}/{{ aggregate_installer }} 
--mode unattended 
--parent_installdir {{ all_tmp_dir }} 
--platform mysql 
--tomcat_http_port 80 
--tomcat_https_port 443 
--raw_hostname {{ all_fqdn }} 
--database_port 3306 
--database_hostname {{ all_mysql_host }} 
--jdbc_username {{ all_mysql_user }} 
--jdbc_password {{ all_mysql_pass }} 
--jdbc_database {{ all_mysql_db }} 
--instance_display_name {{ all_fqdn }} 
--username {{ all_aggregate_user }} 
--app_id '' 
--master_slave_app_id '' 
--jdbc_sqlserver_url '' 
--jdbc_gae_mysql_instance_name '' 
--jdbc_gae_mysql_password ''"

This is from an Ansible setup that I use to spin up Aggregate VMs for testing. You can find it at https://github.com/nafundi/odk-aggregate-box/blob/master/provisioning/roles/install-aggregate/tasks/main.yml. That whole project might give you other useful hints.

Another thing to be aware of is there is a bug with Aggregate's JDBC properties. database_hostname and database_port aren't set in jdbc.properties and I've filed that https://github.com/opendatakit/aggregate/issues/82.

Oh and welcome to ODK! When you get a chance, please introduce yourself here. I'd also encourage you to add a real picture as your avatar because it helps build community!