Skip to content

Commit

Permalink
[Documentation:Developer] Ansible Create Term & Course Docs (#610)
Browse files Browse the repository at this point in the history
The Ansible Create Course and Create Term Documentation. This will allow
for user to create a term and a course on their web server following an
ansible install.

---------

Co-authored-by: Cameron Peterson <46759635+IDzyre@users.noreply.github.com>
Co-authored-by: Barb Cutler <Barb Cutler>
  • Loading branch information
ethanfordwork and IDzyre authored Jun 13, 2024
1 parent 9c7ecca commit 715fb9e
Show file tree
Hide file tree
Showing 6 changed files with 105 additions and 14 deletions.
35 changes: 35 additions & 0 deletions _docs/sysadmin/configuration/ansible_course_creation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
title: Course Creation using Ansible
category: System Administrator > Configuration & Administration
---

NOTE: This guide assumes that you have first created a Submitty server
using Ansible following the
[Installation using Ansible](/sysadmin/installation/ansible) instructions.

## Steps to Create a Course

1. Navigate to the ansible directory in your Submitty installation:

```
cd .setup/ansible
```
2. There is a playbook available named `submitty_course_creation.yml`. This playbook contains the necessary roles to create a new course in Submitty. You can edit this file to specify the details of the course you want to create.
3. Run the playbook using the following command:
```
ansible-playbook -i inventory/submitty playbooks/submitty_course_creation.yml
```
4. Once the process is complete, your new course should be available in Submitty.
**For a more detailed step-by-step guide on creating a course, you
can refer to the [Course Creation](course_creation)
instructions.
**If you wish to understand the individual tasks that are performed during the course creation process, you can examine the tasks defined under the `submitty_course_creation` role.
See also:
[Ansible Term Creation](/sysadmin/configuration/ansible_term_creation)
39 changes: 39 additions & 0 deletions _docs/sysadmin/configuration/ansible_term_creation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
title: Term Creation using Ansible
category: System Administrator > Configuration & Administration
---

NOTE: This guide assumes that you have first created a Submitty server
using Ansible following the
[Installation using Ansible](/sysadmin/installation/ansible) instructions.

## Steps to Create a Term

1. Navigate to the `ansible directory` in your Submitty installation:

```
cd .setup/asnible
```
2. There is a playbook available named `submitty_course_creation.yml`. This playbook contains the necessary roles to create a new term in Submitty. You can edit this file to specify the details of the term you want to create.
**Remember: The term should be an abbreviated semester name like: `s24` . The start and end date must be formatted in mm/dd/yyyy format.
3. Run the playbook using the following command:
```
ansible-playbook -i inventory/submitty playbooks/submitty_course_creation.yml
```
This command will start the term creation process. Ansible will display the progress in the terminal.
4. Once the process is complete, your new term should be available in Submitty.
**For a more detailed step-by-step guide on creating a course, you
can refer to the [Term Creation](term_creation) instructions.
**If you wish to understand the individual tasks that are performed during the course creation process, you can examine the tasks defined under the `submitty_term_creation` role.
See also:
[Ansible Course Creation](/sysadmin/configuration/ansible_course_creation)
3 changes: 3 additions & 0 deletions _docs/sysadmin/configuration/course_creation.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ redirect_from:
- /sysadmin/course_creation
---

**Note**: If you are using Ansible for managing Submitty,
you can follow these [instructions](ansible_course_creation) to create a course using Ansible.


### UNIX Users and Groups

Expand Down
2 changes: 2 additions & 0 deletions _docs/sysadmin/configuration/term_creation.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ redirect_from:
- /sysadmin/course_creation
---

**Note**: If you are using Ansible for managing Submitty,
you can follow these [instructions](ansible_term_creation) to create a term using Ansible.

### Creating a term
To create a term, you should use the script
Expand Down
37 changes: 23 additions & 14 deletions _docs/sysadmin/installation/ansible.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: Installing with Ansible
title: Installation using Ansible
category: System Administrator > Installation
redirect_from:
---

These are the instructions for install Submitty using Ansible.
Ansible is a powerful automation tool that can be used to manage
configurations and automate the term creation process in Submitty.

Getting Started:

**Note**: We assume that you're installing Submitty on a dedicated machine.
***Note**: We assume that you're installing Submitty server on a
dedicated machine.*

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

Expand All @@ -18,24 +18,27 @@ Getting Started:

2. Install Ansible:

Installing Ansible on your local environment is required. Below is a link for more help.

https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html
Installing Ansible on your local environment is required.
See also: [Ansible Documentation](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html)


3. Edit Inventory and Add Server IP:

An example has been given to you in the inventory file. Update localhost with your server ip address.
This will allow access to your web interface.

4. Edit playbook variables with your server properties(`ansible/playbooks/submitty_install.yml`):
4. Edit playbook variables with your server properties, stored in this file:
`.setup/ansible/playbooks/submitty_install.yml`

Note: Configure your playbook with your Submitty settings. See
`ansible/roles/app_submitty/defaults/main.yml` for default installation parameters.
Note: Configure your playbook with your Submitty settings. See:
`.setup/ansible/roles/app_submitty/defaults/main.yml` for default installation parameters.

**Important**: Any variables defined in the playbook will take precedence over the default values.
This allows for fine-tuning and customization of your Submitty installation.

**Reminder**: Ensure that the `submitty_version` variable in your playbook matches the version of
Submitty you intend to install. This is crucial for the correct functioning of your installation.

5. SSL Configuration

Note: If you use SSL, follow steps to configure. If not, skip to step 6.
Expand All @@ -61,11 +64,11 @@ Getting Started:

6. Run Ansible Script

To initiate the installation process, first navigate to the 'ansible' directory.
To initiate the installation process, first navigate to the '.setup/ansible' directory.
Execute the following command:

```
cd ansible
cd .setup/ansible
```

Once you are in the `ansible` directory, you can proceed with the installation by running the
Expand All @@ -77,7 +80,8 @@ Getting Started:

This command initiates the Ansible playbook, which orchestrates the comprehensive installation
process for Submitty. For a detailed understanding of the installation steps, refer to
`ansible/roles/app_submitty/tasks/main.yml`.
`.setup/ansible/roles/app_submitty/tasks/main.yml`.


7. Review Installation Log on VM

Expand All @@ -87,3 +91,8 @@ Getting Started:
8. Navigate to Web Interface

Navigate to your domain name in a web browser.


See also:
[Ansible Term Creation](/sysadmin/configuration/ansible_term_creation)
[Ansible Course Creation](/sysadmin/configuration/ansible_course_creation)
3 changes: 3 additions & 0 deletions navtreedata.js
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,7 @@ var NAVTREE =
[ "Server OS", "/sysadmin/installation/server_os", null ],
[ "Update GNU/Linux Server", "/sysadmin/installation/update_server", null ],
[ "Update Submitty", "/sysadmin/installation/update_submitty", null ],
[ "Ansible Server Installation", "/sysadmin/installation/ansible", null ],
[ "Version Notes", "/sysadmin/installation/version_notes/index", [
[ "Overview", "/sysadmin/installation/version_notes/index", null],
[ "v23.12.02", "/sysadmin/installation/version_notes/v23.12.02", null ],
Expand All @@ -167,7 +168,9 @@ var NAVTREE =
] ],
[ "Configuration & Administration", "/sysadmin/configuration/course_creation", [
[ "Term Creation", "/sysadmin/configuration/term_creation", null ],
[ "Ansible Term Creation", "/sysadmin/configuration/ansible_term_creation", null ],
[ "Course Creation", "/sysadmin/configuration/course_creation", null ],
[ "Ansible Course Creation", "/sysadmin/configuration/ansible_course_creation", null ],
[ "Setting up Version Control", "/sysadmin/configuration/version_control", null ],
[ "SAML Authentication", "/sysadmin/configuration/saml_authentication", null ],
[ "Email Configuration", "/sysadmin/configuration/email_configuration", null ],
Expand Down

0 comments on commit 715fb9e

Please sign in to comment.