Skip to content

PagerDuty/automated-remediation-docs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PagerDuty Automated Remediation for Incident Response Documentation

Netlify Status

Automation is a primary tool for creating, deploying, and maintaining technical infrastructure. It is also useful for ensuring the reliability and repeatability of tasks used during the Incident Response and Remediation process. This guide contains a collection of tips and practices for creating, deploying, and maintaining useful automation for your technical environments.

You can view the documentation directly in this repository, or rendered as a website at https://autoremediation.pagerduty.com.

PagerDuty Automated Remediation for Incident Response

Development

We use MkDocs to create a static site from this repository.

Native

For local development on your native device,

  1. Install MkDocs. pip install mkdocs
  2. Install MkDocs PyMdown Extensions. pip install pymdown-extensions
  3. Install Pygments if you want syntax highlighting for any code examples. pip install pygments
  4. Install the PagerDuty MkDocs Theme.
    1. git clone https://github.com/pagerduty/mkdocs-theme-pagerduty
    2. cd mkdocs-theme-pagerduty & python3 setup.py install
  5. To test locally, run mkdocs serve from the project directory.
  6. You can now view the website in your browser at http://127.0.0.1:8000. The site will automatically update as you edit the code.

Docker

For local development using Docker,

  1. Build the docker image and load it for immediate use. docker build --load -t mkdocs .
  2. Run the container and pass through your current working directory. docker run -v $(pwd):/docs -p 127.0.0.1:8000:8000 mkdocs
  3. You can now view the website in your browser at http://127.0.0.1:8000. The site will automatically update as you edit the code.

Note: If you're using an Apple Silicon device, add --platform linux/arm64/v8 to the docker build command to get a native Apple Silicon image. That will work faster than translating an arm64 image.

Deploying

  1. Run mkdocs build --clean to produce the static site for upload.

  2. Upload the site directory to S3 (or wherever you would like it to be hosted).

     aws s3 sync ./site/ s3://[BUCKET_NAME] \
       --acl public-read \
       --exclude "*.py*" \
       --delete
    

License

Apache 2 (See LICENSE file)

Contributing

Thank you for considering contributing! If you have any questions, just ask - or submit your issue or pull request anyway. The worst that can happen is we'll politely ask you to change something. We appreciate all friendly contributions.

Here is our preferred process for submitting a pull request,

  1. Fork it ( https://github.com/PagerDuty/automated-remediation-docs/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request.