{"id":15017475,"url":"https://github.com/screwdriver-cd/guide","last_synced_at":"2025-04-07T12:06:12.598Z","repository":{"id":9348048,"uuid":"61775855","full_name":"screwdriver-cd/guide","owner":"screwdriver-cd","description":"Screwdriver.cd Documentation","archived":false,"fork":false,"pushed_at":"2024-04-15T06:15:53.000Z","size":20571,"stargazers_count":139,"open_issues_count":2,"forks_count":70,"subscribers_count":30,"default_branch":"master","last_synced_at":"2024-04-16T00:05:06.648Z","etag":null,"topics":["cd","continuous-delivery","documentation","guide","mkdocs","python","screwdriver"],"latest_commit_sha":null,"homepage":"http://docs.screwdriver.cd","language":"Ruby","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/screwdriver-cd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-06-23T05:18:23.000Z","updated_at":"2024-05-17T18:53:25.642Z","dependencies_parsed_at":"2023-10-14T16:42:42.869Z","dependency_job_id":"65beb1be-3f3a-43c8-a75f-af0d9da7b6f3","html_url":"https://github.com/screwdriver-cd/guide","commit_stats":null,"previous_names":[],"tags_count":513,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/screwdriver-cd%2Fguide","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/screwdriver-cd%2Fguide/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/screwdriver-cd%2Fguide/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/screwdriver-cd%2Fguide/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/screwdriver-cd","download_url":"https://codeload.github.com/screwdriver-cd/guide/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247648976,"owners_count":20972945,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cd","continuous-delivery","documentation","guide","mkdocs","python","screwdriver"],"created_at":"2024-09-24T19:50:31.799Z","updated_at":"2025-04-07T12:06:12.580Z","avatar_url":"https://github.com/screwdriver-cd.png","language":"Ruby","readme":"# Screwdriver Guide\n\n[![Build Status][status-image]][status-url] [![Open Issues][issues-image]][issues-url]\n\n\u003e Documentation for the Screwdriver CD service\n\nScrewdriver is a self-contained, pluggable service to help you build, test, and continuously deliver software using the latest containerization technologies.\n\n## To start using Screwdriver\n\nFor more information about Screwdriver, check out our [homepage](https://screwdriver.cd).\n\n## To start contributing to Screwdriver\n\nHave a look at our guidelines, as well as pointers on where to start making changes, in our [contributing guide](http://docs.screwdriver.cd/about/contributing).\n\nThe guide is powered by Jekyll. There are two ways to run Jekyll: via Docker and via installation.\n\n### Running Jekyll using Docker\n\n1. Install [docker-desktop](https://www.docker.com/products/docker-desktop) if you haven't already.\n1. Ensure Docker is running with `docker info`; if not, then on Mac, you can launch easily using `open -a /Applications/Docker.app/`. Launching on CLI (rather than double-clicking) has the advantage of exporting your `$SSH_AUTH_SOCK` and `ssh-agent` will work properly, should you need it at some point.\n1. Run the Jekyll Docker image with mount of `$PWD` to its serving location and with `-ti` so `^C` will kill it.\n   ```bash\n   docker run -v $PWD:/srv/jekyll:rw -p 4080:4000 -it jekyll/jekyll jekyll serve --source docs --destination _site\n   ```\n\n### Running Jekyll by installing\n\nIn order to install Jekyll you'll need Ruby, the Ruby package manager (RubyGems), and bundle to install and run Jekyll. You can check if you have these already installed like so:\n\n```bash\n$ ruby --version\nruby 2.4.1\n$ gem --version\n2.6.12\n$ bundle --version\nBundler version 1.15.1\n```\n\nJekyll supports Ruby version 2.1 or above.\n\nYou can also build and serve the documentation using Docker (see below). If you choose this approach, there is no need to install Ruby/bundle/jekyll.\n\n### Standard\n\nTo install the `jekyll` using bundle, making sure we're in the same directory as the `Gemfile`.\n\nInstall the `jekyll` package using bundler:\n\n```bash\nbundle install\n```\n\nYou should now have the `jekyll` command installed on your system. Run `bundle exec jekyll --version` to check that everything worked okay.\n\n```bash\n$ bundle exec jekyll --version\njekyll 3.8.4\n```\n\n## Viewing docs locally\n\nThere's a single configuration file named `_config.yml`, and a folder named `docs` that will contain our documentation source files.\n\nJekyll comes with a built-in webserver that lets you preview your documentation as you work on it. You can start the webserver locally with Jekyll directly.\n\n### Standard\n\nJekyll comes with a built-in webserver that lets you preview your documentation as you work on it. We start the webserver by making sure we're in the same directory as the `docs` folder, and then running the `bundle exec jekyll serve --source docs --destination _site` command:\n\n```bash\n$ bundle exec jekyll serve --source docs --destination _site\nConfiguration file: docs/_config.yml\n            Source: docs\n       Destination: _site\n Incremental build: disabled. Enable with --incremental\n      Generating...\n                    done in 2.251 seconds.\n Auto-regeneration: enabled for 'docs'\n    Server address: http://127.0.0.1:4000/\n  Server running... press ctrl-c to stop.\n```\n\n### Docker\n\nIf you don't have Ruby installed, you can easily build and view the Screwdriver Guide using Docker. From the root directory\nof the repository, execute:\n\n```bash\ndocker run --rm \\\n  --volume=\"$PWD:/srv/jekyll\" -p 4000:4000 \\\n  -it jekyll/jekyll:4.2.0 \\\n  jekyll serve --source docs --destination _site\n```\n\nThis may take some time as it must download all gems specified in the Gemfile on every run. If you need to rebuild the\nguide frequently, you could simply commit your changes and work from your committed image containing all dependencies.\n\nFor example:\n\n```bash\ndocker run --volume ... --destination _site # be sure to leave off --rm\ndocker commit $(docker ps -q -a |head -n 1 | awk '{print $1}') cached-jekyll\n\n# will already contain all installed gems: should be much faster!\ndocker run --rm \\\n  --volume=\"$PWD:/srv/jekyll\" -p 4000:4000 \\\n  -it cached-jekyll \\\n  jekyll serve --source docs --destination _site\n```\n\n### Browse your local guide\n\nOnce you successfully start the webserver, open up [http://127.0.0.1:4000/](http://127.0.0.1:4000/) in your browser. You'll be able to see the index page being displayed.\nAnd you'll also be able to see the other language index page open up http://127.0.0.1:4000/:lang/ in your browser.\nFor example, open up [http://127.0.0.1:4000/ja/](http://127.0.0.1:4000/ja/) in your browser, you'll be able to see the Japanese index page being displayed.\n\n## Adding docs\n\nSimply add a new markdown document to the folder hierarchy in `docs`, and add an entry to the tree in `docs/_data/menu.yaml`\n\n## Documentation Structure\n\n- Homepage\n  - [x] What are the sections for\n- Cluster Management (for SD owners)\n  - [x] Overall architecture\n  - [x] Configuring API\n    - [x] Scm plugins\n    - [x] Datastore plugins\n  - [x] Configuring UI\n  - [x] Configuring Store\n    - [x] Logging plugins\n  - [x] Configuring Queue Service\n  - [x] Running locally\n  - [x] Configure Build\n  - Examples\n    - [x] Setting up Kubernetes\n  - [ ] Debugging\n- User Guide\n  - [x] Quickstart\n  - [x] API\n  - [x] Authentication and Authorization\n  - [x] Configuration\n    - [x] Overall YAML\n    - [x] Metadata\n    - [x] Secrets\n  - [x] Templates\n  - [x] FAQ\n- About\n  - [x] What is SD?\n  - [x] Appendix\n    - [x] Domain model\n    - [x] Execution engines\n  - [x] Contributing\n  - [x] Support\n\n[issues-image]: https://img.shields.io/github/issues/screwdriver-cd/screwdriver.svg\n[issues-url]: https://github.com/screwdriver-cd/screwdriver/issues\n[status-image]: https://cd.screwdriver.cd/pipelines/27/badge\n[status-url]: https://cd.screwdriver.cd/pipelines/27\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscrewdriver-cd%2Fguide","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscrewdriver-cd%2Fguide","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscrewdriver-cd%2Fguide/lists"}