feat(provision): better testing config and documentation
authorJavier Bértoli <jbertoli@curii.com>
Fri, 16 Oct 2020 18:30:34 +0000 (15:30 -0300)
committerJavier Bértoli <jbertoli@curii.com>
Fri, 16 Oct 2020 18:38:52 +0000 (15:38 -0300)
refs #16471 and #16992
Arvados-DCO-1.1-Signed-off-by: Javier Bértoli <jbertoli@curii.com>

doc/install/install-using-salt.html.textile.liquid
tools/salt-install/provision.sh
tools/salt-install/single_host/arvados.sls

index 629b760ae183d314a03e675e3436caf7f848458e..4e8a3f9c01af8d8065476512a77406e6788e33cd 100644 (file)
@@ -16,6 +16,7 @@ SPDX-License-Identifier: CC-BY-SA-3.0
 # "Install Arvados using Saltstack":#saltstack
 # "Single host install using the provision.sh script":#single_host
 # "Local testing Arvados in a Vagrant box":#vagrant
+# "Initial user and login":#initial_user
 
 h2(#tlrl). For the impatient (TL;RL)
 
@@ -30,6 +31,8 @@ Just edit the @provision.sh@ script, modify the variables at the top of the file
 
 It will install all the main Arvados components to get you up and running.
 
+The whole installation procedure takes somewhere between 15 to 60 minutes, depending on the host and your network bandwith. On a virtual machine with 1 core and 1 GB RAM, it takes ~25 minutes to do the initial install.
+
 There is a companion @Vagrantfile@ to install Arvados in a local Vagrant virtual machine. If you have "Vagrant":https://www.vagrantup.com/ installed in your computer, you can just get Arvados installed running in a local virtual machine with the command
 
 <notextile>
@@ -121,3 +124,30 @@ To get it running, simply install Vagrant in your computer, edit the @provision@
 <pre><code>vagrant up
 </code></pre>
 </notextile>
+
+After the setup is done, you need to edit your @/etc/hosts@ file to be able to reach the cluster. You can do it this way (as root):
+<notextile>
+<pre><code>export CLUSTER="arva2"
+export DOMAIN="arv.local"
+echo "127.0.0.2 api keep keep0 collections download ws workbench workbench2 ${CLUSTER}.${DOMAIN} api.${CLUSTER}.${DOMAIN} keep.${CLUSTER}.${DOMAIN} keep0.${CLUSTER}.${DOMAIN} collections.${CLUSTER}.${DOMAIN} download.${CLUSTER}.${DOMAIN} ws.${CLUSTER}.${DOMAIN} workbench.${CLUSTER}.${DOMAIN} workbench2.${CLUSTER}.${DOMAIN}" >> /etc/hosts
+</code></pre>
+</notextile>
+
+If you want to reconfigure the running box, you can just:
+
+1. edit the pillars to suit your needs
+2. run
+<notextile>
+<pre><code>vagrant reload --provision
+</code></pre>
+</notextile>
+
+h2#(initial_user). "Initial user and login
+
+The provision script, by default, sets an initial user for testing purposes, configured as administrator of the newly created cluster.
+
+Assuming you don't change any value from the script, the initial credentials are:
+
+* User: 'admin'
+* Password: 'password'
+* Email: 'admin@arva2.arv.local'
index 1ee13752b0020e865b988b883463b62bb7442292..ecd9f235ed907384ddfedf779d9302989ee42ecb 100755 (executable)
 CLUSTER="arva2"
 DOMAIN="arv.local"
 
+INITIAL_USER="admin"
+
+# If not specified, the initial user email will be composed as
+# INITIAL_USER@CLUSTER.DOMAIN
+INITIAL_USER_EMAIL="${INITIAL_USER}@${CLUSTER}.${DOMAIN}"
+INITIAL_USER_PASSWORD="password"
+
 # The example config you want to use. Currently, only "single_host" is
 # available
 CONFIG_DIR="single_host"
@@ -187,6 +194,9 @@ for f in ${SOURCE_PILLARS_DIR}/*; do
        s/__RELEASE__/${RELEASE}/g;
        s/__HOST_SSL_PORT__/${HOST_SSL_PORT}/g;
        s/__GUEST_SSL_PORT__/${GUEST_SSL_PORT}/g;
+       s/__INITIAL_USER__/${INITIAL_USER}/g;
+       s/__INITIAL_USER_EMAIL__/${INITIAL_USER_EMAIL}/g;
+       s/__INITIAL_USER_PASSWORD__/${INITIAL_USER_PASSWORD}/g;
        s/__VERSION__/${VERSION}/g" \
   ${f} > ${P_DIR}/$(basename ${f})
 done
index 9b1e41d46e3f1d959b52c44d897508398bae3067..ad0cbab700bc29aacc58d28310393a6b60671021 100644 (file)
@@ -95,13 +95,10 @@ arvados:
     Login:
       Test:
         Enable: true
-        javier:
-          User: javier@arva2.arv.local
-          Password: perico
-
-    AuditLogs:
-      Section_to_ignore:
-        - some_random_value
+        Users:
+          __INITIAL_USER__:
+            Email: __INITIAL_USER_EMAIL__
+            Password: __INITIAL_USER_PASSWORD__
 
     ### VOLUMES
     ## This should usually match all your `keepstore` instances