Skip to content

Latest commit

 

History

History
56 lines (40 loc) · 3.18 KB

README.md

File metadata and controls

56 lines (40 loc) · 3.18 KB

PagerDuty Full Service Ownership Documentation

Netlify Status

This guide documents a collection of leading practices for empowering engineers to own their code and services in production. It teaches you how to develop the right culture to implement full-service owenrship strategies, and how to foster an environment of accountability with high quality code.

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

PagerDuty Full-Service Ownership

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/full-service-ownership-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.