<commit_before>Google Governance, Risk and Compliance (GGRC)
=========

[![Build Status](https://jenkins.reciprocitylabs.com/job/ggrc_develop_build/badge/icon)](https://jenkins.reciprocitylabs.com/job/ggrc_develop_build/)
[![Issue Stats](http://www.issuestats.com/github/google/ggrc-core/badge/pr?style=flat)](http://www.issuestats.com/github/google/ggrc-core)

Governance, Risk Management, and Compliance are activities necessary for any organization with regulatory or contractual obligations.

Governance refers to management structure, policies, procedures, shareholder relations, etc.

Risk Management is a process to identify business and technical risks as well as means to mitigate those.

Compliance refers to processes necessary to meet applicable regulations and communicate to stakeholders about it.

Many organizations operate in multiple jurisdictions worldwide, each of which has its own and often overlapping laws and regulations.   Organizational functions and information relating to risk management and compliance often tend to be managed in silos reflecting the multiple jurisdictions, scope, stakeholder diversity and historical basis.   This leads to inefficiency.

The GGRC project intends to provide an open source solution for managing some of these common problems.  The application provides a common system of record for information in this domain.   It provides the ability to capture the relationships and to understand how the pieces fit together.  It also provides workflow capability to manage processes in this domain.


Migrated from [Google](https://code.google.com/archive/p/compliance-management)
[Code](https://code.google.com/archive/p/ggrc-core).


## Requirements

The following software is required to stand up a GGRC-Core development
environment:

|               Prerequisite                       |                 Description              |
|--------------------------------------------------|------------------------------------------|
|[Docker](https://www.docker.com/)                 | Container management tool                |
|[Docker compose](https://docs.docker.com/compose/)| A tool for defining multi-container apps |

**NOTE for Windows/OSX users:** The easiest way of getting docker is by installing the
[docker toolbox](https://www.docker.com/products/docker-toolbox).

Or alternatively with our legacy vagrant environemnt:

|               Prerequisite               |               Description                |
|------------------------------------------|------------------------------------------|
|[VirtualBox](https://www.virtualbox.org/) | Oracle VirtualBox Virtual Machine player |
|[Vagrant](https://www.vagrantup.com/)      | Handy scriptable VM management           |
|[Ansible](https://www.ansible.com/)    | Provisioning and deployment tool         |

## Quick Start with Docker

Getting started with GGRC-Core development should be fast and easy once you
have docker up and running. Here are the steps:

**NOTE for Windows/OSX users:** Make sure `docker` is up and running by following the [windows guide](https://docs.docker.com/engine/installation/windows/#using-docker-from-windows-command-prompt-cmd-exe) / [osx guide](https://docs.docker.com/engine/installation/mac/#from-your-shell).

* clone the repo
* cd to the project
directory
* run the following:

    ```
    git submodule update --init
    docker-compose up -d
    docker exec -it ggrccore_dev_1 su vagrant
    make bower_components
    build_css
    build_assets
    db_reset
    ```

If you see download errors during the `docker-compose up -d` stage, or if any subsequent
step fails, try running `docker-compose build` (See [Reprovisioning a Docker container](#reprovisioning-a-docker-container) below for more).<commit_msg>Force rebuilding of bower components<commit_after>Google Governance, Risk and Compliance (GGRC)
=========

[![Build Status](https://jenkins.reciprocitylabs.com/job/ggrc_develop_build/badge/icon)](https://jenkins.reciprocitylabs.com/job/ggrc_develop_build/)
[![Issue Stats](http://www.issuestats.com/github/google/ggrc-core/badge/pr?style=flat)](http://www.issuestats.com/github/google/ggrc-core)

Governance, Risk Management, and Compliance are activities necessary for any organization with regulatory or contractual obligations.

Governance refers to management structure, policies, procedures, shareholder relations, etc.

Risk Management is a process to identify business and technical risks as well as means to mitigate those.

Compliance refers to processes necessary to meet applicable regulations and communicate to stakeholders about it.

Many organizations operate in multiple jurisdictions worldwide, each of which has its own and often overlapping laws and regulations.   Organizational functions and information relating to risk management and compliance often tend to be managed in silos reflecting the multiple jurisdictions, scope, stakeholder diversity and historical basis.   This leads to inefficiency.

The GGRC project intends to provide an open source solution for managing some of these common problems.  The application provides a common system of record for information in this domain.   It provides the ability to capture the relationships and to understand how the pieces fit together.  It also provides workflow capability to manage processes in this domain.


Migrated from [Google](https://code.google.com/archive/p/compliance-management)
[Code](https://code.google.com/archive/p/ggrc-core).


## Requirements

The following software is required to stand up a GGRC-Core development
environment:

|               Prerequisite                       |                 Description              |
|--------------------------------------------------|------------------------------------------|
|[Docker](https://www.docker.com/)                 | Container management tool                |
|[Docker compose](https://docs.docker.com/compose/)| A tool for defining multi-container apps |

**NOTE for Windows/OSX users:** The easiest way of getting docker is by installing the
[docker toolbox](https://www.docker.com/products/docker-toolbox).

Or alternatively with our legacy vagrant environemnt:

|               Prerequisite               |               Description                |
|------------------------------------------|------------------------------------------|
|[VirtualBox](https://www.virtualbox.org/) | Oracle VirtualBox Virtual Machine player |
|[Vagrant](https://www.vagrantup.com/)      | Handy scriptable VM management           |
|[Ansible](https://www.ansible.com/)    | Provisioning and deployment tool         |

## Quick Start with Docker

Getting started with GGRC-Core development should be fast and easy once you
have docker up and running. Here are the steps:

**NOTE for Windows/OSX users:** Make sure `docker` is up and running by following the [windows guide](https://docs.docker.com/engine/installation/windows/#using-docker-from-windows-command-prompt-cmd-exe) / [osx guide](https://docs.docker.com/engine/installation/mac/#from-your-shell).

* clone the repo
* cd to the project
directory
* run the following:

    ```
    git submodule update --init
    docker-compose up -d
    docker exec -it ggrccore_dev_1 su vagrant
    make -B bower_components
    build_css
    build_assets
    db_reset
    ```

If you see download errors during the `docker-compose up -d` stage, or if any subsequent
step fails, try running `docker-compose build` (See [Reprovisioning a Docker container](#reprovisioning-a-docker-container) below for more).
{'fraction_non_alphanumeric': 0.12854117024093195, 'fraction_numerical': 0.00026476039184537993, 'mean_word_length': 3.025039957378796, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 24, 'lorem ipsum': 0, 'www.': 14, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 6, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5461958', 'n_tokens_mistral': 1955, 'n_tokens_neox': 1815, 'n_words': 702}