Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync Vulcan Docs and Add Env Vars #647

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/config.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Vulcan Configuration

Vulcan can be set up in a few different ways. It can be done by having a vulcan.yml file that has settings for many different configurations. If there is no vulcan.yml file then the configurations will be read in from vulcan.default.yml that has default configuration as well as the ability for the configurations to be set by environment variables.
Vulcan can be set up in a few different ways. It can be done by having a vulcan.yml file that has settings for many different configurations. If there is no vulcan.yml file then the configurations will be read in from vulcan.default.yml that has default configuration as well as the ability for the configurations to be set by environment variables (see [installation](index.md)).

[**Installation**](index.md) | [**Configuration**](config.md)

Expand Down
35 changes: 33 additions & 2 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Vulcan can be set up in a few different ways. It can be done by having a vulcan.
* [Dependencies](#dependencies)
* [Run with Docker](#run-with-docker)
* [Tasks](#tasks)
* [Environment Variables](#environment-variables)

## Installation

Expand All @@ -28,6 +29,7 @@ Given that Vulcan requires at least a database service, we use Docker Compose.
3. Navigate to the base folder where `docker-compose.yml` is located
4. Run the following commands in a terminal window from the vulcan source directory:
1. `./setup-docker-secrets.sh`
([environment variables](#environment-variables) should be set beforehand)
2. `docker-compose up -d`
3. `docker-compose run --rm web rake db:create db:schema:load db:migrate`
4. `docker-compose run --rm web rake db:create_admin`
Expand Down Expand Up @@ -64,6 +66,35 @@ This will fetch the latest version of the container, redeploy if a newer version

`docker-compose down` # From the source directory you started from.

### Tasks
## Tasks

### STIG/SRG Puller Task

This application includes a rake task that pulls published Security Requirements Guides (SRGs) and Security Technical Implementation Guides (STIGs) from public.cyber.mil and saves them locally. This task can be executed manually or set up to run on a schedule in a production environment.

#### Manual Execution

You can manually execute the STIG/SRG puller task by running the following command in your terminal:

```shell
bundle exec rails stig_and_srg_puller:pull
```

#### Scheduling the Task in Production

If you wish to automate the execution of this task in a production environment, you can set up a task scheduler on your hosting platform.
The configuration will depend on your specific hosting service.

Generally, you will need to create a job that runs the following command:

```shell
bundle exec rails stig_and_srg_puller:pull
```

You can set the frequency of this task according to your preference or needs. However, it's important to consider the volume of data being pulled
and the impact on the application's performance when deciding on the frequency.

Please refer to your hosting platform's documentation or support services for specific instructions on how to set up scheduled tasks or cron jobs.

## Environment Variables

Refer to the [main page](https://vulcan.mitre.org/#tasks) to see the available rake tasks that can be scheduled in production.
Loading