Skip to content

Commit b4316de

Browse files
[Documentation:Developer] Ansible Install Script Documentation (#600)
This PR adds documentation to Submitty/Submitty#10338, installing Submitty using Ansible.
1 parent 33a2d28 commit b4316de

File tree

2 files changed

+93
-0
lines changed

2 files changed

+93
-0
lines changed
+89
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
---
2+
title: Installing with Ansible
3+
category: System Administrator > Installation
4+
redirect_from:
5+
---
6+
7+
These are the instructions for install Submitty using Ansible.
8+
9+
Getting Started:
10+
11+
**Note**: We assume that you're installing Submitty on a dedicated machine.
12+
13+
1. [Install Ubuntu 22.04 server edition (or other supported distro)](/sysadmin/installation/server_os)
14+
15+
Note: If you are duplicating an existing Submitty installation onto a new server, you should
16+
synchronize `/etc/passwd`, `/etc/shadow`, `/etc/group`, and `/etc/gshadow` before installing
17+
the rest of Submitty to avoid mismatched UIDs and GIDs of the Submitty users.
18+
19+
2. Install Ansible:
20+
21+
Installing Ansible on your local environment is required. Below is a link for more help.
22+
23+
https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html
24+
25+
26+
3. Edit Inventory and Add Server IP:
27+
28+
An example has been given to you in the inventory file. Update localhost with your server ip address.
29+
This will allow access to your web interface.
30+
31+
4. Edit playbook variables with your server properties(`ansible/playbooks/submitty_install.yml`):
32+
33+
Note: Configure your playbook with your Submitty settings. See
34+
`ansible/roles/app_submitty/defaults/main.yml` for default installation parameters.
35+
36+
**Important**: Any variables defined in the playbook will take precedence over the default values.
37+
This allows for fine-tuning and customization of your Submitty installation.
38+
39+
5. SSL Configuration
40+
41+
Note: If you use SSL, follow steps to configure. If not, skip to step 6.
42+
43+
Secure Sockets Layer (SSL) is a protocol for establishing authenticated and encrypted links between
44+
networked computers. It's necessary for secure data transmission, such as user login credentials.
45+
46+
To configure SSL for your Submitty installation, you'll need to obtain an SSL certificate. This can
47+
be from a Certificate Authority (CA) or a self-signed certificate if it's for development purposes.
48+
49+
Once you have your certificate and key, place them in the appropriate directory (usually
50+
`/etc/ssl/certs/` for the certificate and `/etc/ssl/private/` for the key).
51+
52+
Then, update your server's SSL configuration file with the paths to your certificate and key.
53+
The relevant lines might look something like this:
54+
55+
```
56+
SSLCertificateFile /etc/ssl/certs/mycert.pem
57+
SSLCertificateKeyFile /etc/ssl/private/mykey.pem
58+
```
59+
60+
Save your changes and proceed to run the Ansible script.
61+
62+
6. Run Ansible Script
63+
64+
To initiate the installation process, first navigate to the 'ansible' directory.
65+
Execute the following command:
66+
67+
```
68+
cd ansible
69+
```
70+
71+
Once you are in the `ansible` directory, you can proceed with the installation by running the
72+
Ansible playbook:
73+
74+
```
75+
ansible-playbook -i inventory/submitty playbooks/submitty_install.yml
76+
```
77+
78+
This command initiates the Ansible playbook, which orchestrates the comprehensive installation
79+
process for Submitty. For a detailed understanding of the installation steps, refer to
80+
`ansible/roles/app_submitty/tasks/main.yml`.
81+
82+
7. Review Installation Log on VM
83+
84+
Navigate to `/usr/local/submitty/install.log` on your machine(or VM) to see the output of the
85+
install process.
86+
87+
8. Navigate to Web Interface
88+
89+
Navigate to your domain name in a web browser.

_docs/sysadmin/installation/index.md

+4
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ will be able to read/execute it.
2323

2424
_Note: These instructions should be run under root/sudo._
2525

26+
We have two methods for installing Submitty. The first method is running the bootstrap
27+
script which follows the set of instructions listed below. The second installation method uses Ansible.
28+
You can use these [instructions](/sysadmin/installation/ansible).
29+
2630

2731
1. [Install Ubuntu 22.04 server edition (or other supported distro)](/sysadmin/installation/server_os)
2832

0 commit comments

Comments
 (0)