From 715fb9e7a40648b4bc74ead709ccd444172fb93d Mon Sep 17 00:00:00 2001 From: Ethan Ford <127396496+ethanfordwork@users.noreply.github.com> Date: Thu, 13 Jun 2024 10:09:15 -0700 Subject: [PATCH] [Documentation:Developer] Ansible Create Term & Course Docs (#610) 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 --- .../configuration/ansible_course_creation.md | 35 +++++++++++++++++ .../configuration/ansible_term_creation.md | 39 +++++++++++++++++++ .../sysadmin/configuration/course_creation.md | 3 ++ _docs/sysadmin/configuration/term_creation.md | 2 + _docs/sysadmin/installation/ansible.md | 37 +++++++++++------- navtreedata.js | 3 ++ 6 files changed, 105 insertions(+), 14 deletions(-) create mode 100644 _docs/sysadmin/configuration/ansible_course_creation.md create mode 100644 _docs/sysadmin/configuration/ansible_term_creation.md diff --git a/_docs/sysadmin/configuration/ansible_course_creation.md b/_docs/sysadmin/configuration/ansible_course_creation.md new file mode 100644 index 00000000..3230411a --- /dev/null +++ b/_docs/sysadmin/configuration/ansible_course_creation.md @@ -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) \ No newline at end of file diff --git a/_docs/sysadmin/configuration/ansible_term_creation.md b/_docs/sysadmin/configuration/ansible_term_creation.md new file mode 100644 index 00000000..f31d96e2 --- /dev/null +++ b/_docs/sysadmin/configuration/ansible_term_creation.md @@ -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) \ No newline at end of file diff --git a/_docs/sysadmin/configuration/course_creation.md b/_docs/sysadmin/configuration/course_creation.md index 06fe3b3a..a092ef3d 100644 --- a/_docs/sysadmin/configuration/course_creation.md +++ b/_docs/sysadmin/configuration/course_creation.md @@ -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 diff --git a/_docs/sysadmin/configuration/term_creation.md b/_docs/sysadmin/configuration/term_creation.md index 25352add..881eeaeb 100644 --- a/_docs/sysadmin/configuration/term_creation.md +++ b/_docs/sysadmin/configuration/term_creation.md @@ -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 diff --git a/_docs/sysadmin/installation/ansible.md b/_docs/sysadmin/installation/ansible.md index 10ef6baa..bce39395 100644 --- a/_docs/sysadmin/installation/ansible.md +++ b/_docs/sysadmin/installation/ansible.md @@ -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) @@ -18,9 +18,8 @@ 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: @@ -28,14 +27,18 @@ Getting Started: 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. @@ -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 @@ -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 @@ -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) \ No newline at end of file diff --git a/navtreedata.js b/navtreedata.js index ffbe8bc4..216aa2f5 100644 --- a/navtreedata.js +++ b/navtreedata.js @@ -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 ], @@ -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 ],