All Projects → screwdriver-cd → Guide

screwdriver-cd / Guide

Licence: other
Screwdriver.cd Documentation

Programming Languages

python
139335 projects - #7 most used programming language
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Guide

Gitlab Ci Pipeline Php
☕️ Docker images for test PHP applications with Gitlab CI (or any other CI platform!)
Stars: ✭ 451 (+299.12%)
Mutual labels:  continuous-delivery, cd
Gocd
Main repository for GoCD - Continuous Delivery server
Stars: ✭ 6,314 (+5487.61%)
Mutual labels:  continuous-delivery, cd
Argo Cd
Declarative continuous deployment for Kubernetes.
Stars: ✭ 7,887 (+6879.65%)
Mutual labels:  continuous-delivery, cd
Pyspark Cheatsheet
🐍 Quick reference guide to common patterns & functions in PySpark.
Stars: ✭ 108 (-4.42%)
Mutual labels:  documentation, guide
Samson
Web interface for deployments, with plugin architecture and kubernetes support
Stars: ✭ 1,431 (+1166.37%)
Mutual labels:  continuous-delivery, cd
Gradle Kotlin Dsl Migration Guide
The missing migration guide to the Gradle Kotlin DSL
Stars: ✭ 364 (+222.12%)
Mutual labels:  documentation, guide
Abstruse
Abstruse is a free and open-source CI/CD platform that tests your models and code.
Stars: ✭ 704 (+523.01%)
Mutual labels:  continuous-delivery, cd
terraform-provider-spinnaker
Terraform Provider to manage spinnaker pipelines
Stars: ✭ 36 (-68.14%)
Mutual labels:  continuous-delivery, cd
Orkestra
Functional DevOps with Scala and Kubernetes
Stars: ✭ 102 (-9.73%)
Mutual labels:  continuous-delivery, cd
Cd Maturity Model
Continuous Delivery Maturity Model - Gap Analysis Visualization Tool, using D3.js
Stars: ✭ 45 (-60.18%)
Mutual labels:  continuous-delivery, cd
Awesome Coins
₿ A guide (for humans!) to cryto-currencies and their algos.
Stars: ✭ 3,469 (+2969.91%)
Mutual labels:  documentation, guide
Go Compression.github.io
The Hitchhiker's Guide to Compression
Stars: ✭ 106 (-6.19%)
Mutual labels:  documentation, guide
Webapp Checklist
Technical details that a programmer of a web application should consider before making the site public.
Stars: ✭ 320 (+183.19%)
Mutual labels:  documentation, guide
Bad Data Guide
An exhaustive reference to problems seen in real-world data along with suggestions on how to resolve them.
Stars: ✭ 3,862 (+3317.7%)
Mutual labels:  documentation, guide
flagsmith-nodejs-client
Flagsmith Node JS Client. Flagsmith lets you manage features flags across web, mobile and server side applications. Get builds out faster. Control who has access to new features.
Stars: ✭ 13 (-88.5%)
Mutual labels:  continuous-delivery, cd
Lambdacd
a library to define a continuous delivery pipeline in code
Stars: ✭ 655 (+479.65%)
Mutual labels:  continuous-delivery, cd
www.go.cd
Github pages repo
Stars: ✭ 39 (-65.49%)
Mutual labels:  continuous-delivery, cd
flagsmith-js-client
Javascript Client for Flagsmith. Ship features with confidence using feature flags and remote config. Host yourself or use our hosted version at https://www.flagsmith.com/
Stars: ✭ 42 (-62.83%)
Mutual labels:  continuous-delivery, cd
Nvim Lua Guide
A guide to using Lua in Neovim
Stars: ✭ 750 (+563.72%)
Mutual labels:  documentation, guide
Pipelines
Build pipelines for automation, deployment, testing...
Stars: ✭ 105 (-7.08%)
Mutual labels:  continuous-delivery, cd

Screwdriver Guide

Build Status Open Issues

Documentation for the Screwdriver CD service

Screwdriver is a self-contained, pluggable service to help you build, test, and continuously deliver software using the latest containerization technologies.

To start using Screwdriver

For more information about Screwdriver, check out our homepage.

To start contributing to Screwdriver

Have a look at our guidelines, as well as pointers on where to start making changes, in our contributing guide.

The guide is powered by Jekyll. There are two ways to run Jekyll: via Docker and via installation.

Running Jekyll using Docker

  1. Install docker-desktop if you haven't already.
  2. 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 advantage of exporting your $SSH_AUTH_SOCK and ssh-agent will work properly, should you need it at some point.
  3. Run the Jekyll Docker image with mount of $PWD to its serving location and with -ti so ^C will kill it.
    docker run -v $PWD:/srv/jekyll:rw -p 4080:4000 -it jekyll/jekyll jekyll serve --source docs --destination _site
    

Running Jekyll by installing

In 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:

$ ruby --version
ruby 2.4.1
$ gem --version
2.6.12
$ bundle --version
Bundler version 1.15.1

Jekyll supports Ruby version 2.1 or above.

You 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.

Standard

To install the jekyll using bundle, making sure we're in the same directory as the Gemfile.

Install the jekyll package using bundler:

bundle install

You should now have the jekyll command installed on your system. Run bundle exec jekyll --version to check that everything worked okay.

$ bundle exec jekyll --version
jekyll 3.8.4

Viewing docs locally

There's a single configuration file named _config.yml, and a folder named docs that will contain our documentation source files.

Jekyll 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.

Standard

Jekyll 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:

$ bundle exec jekyll serve --source docs --destination _site
Configuration file: docs/_config.yml
            Source: docs
       Destination: _site
 Incremental build: disabled. Enable with --incremental
      Generating...
                    done in 2.251 seconds.
 Auto-regeneration: enabled for 'docs'
    Server address: http://127.0.0.1:4000/
  Server running... press ctrl-c to stop.

Docker

If you don't have Ruby installed, you can easily build and view the Screwdriver Guide using Docker. From the root directory of the repository, execute:

docker run --rm \
  --volume="$PWD:/srv/jekyll" -p 4000:4000 \
  -it jekyll/builder:3.8 \
  jekyll serve --source docs --destination _site

This may take some time as it must download all gems specified in the Gemfile on every run. If you need to rebuild the guide frequently, you could simply commit your changes and work from your commited image containing all dependencies.

For example:

docker run --volume ... --destination _site # be sure to leave off --rm
docker commit $(docker ps -q -a |head -n 1 | awk '{print $1}') cached-jekyll

# will already contain all installed gems: should be much faster!
docker run --rm \
  --volume="$PWD:/srv/jekyll" -p 4000:4000 \
  -it cached-jekyll \
  jekyll serve --source docs --destination _site

Browse your local guide

Once you successfully start the webserver, open up http://127.0.0.1:4000/ in your browser. You'll be able to see the index page being displayed. And you'll also be able to see the other language index page open up http://127.0.0.1:4000/:lang/ in your browser. For example, open up http://127.0.0.1:4000/ja/ in your browser, you'll be able to see the Japanese index page being displayed.

Adding docs

Simply add a new markdown document to the folder hierarchy in docs, and add an entry to the tree in docs/_data/menu.yaml

Documentation Structure

  • Homepage
    • [x] What are the sections for
  • Cluster Management (for SD owners)
    • [x] Overall architecture
    • [x] Configuring API
      • [x] Scm plugins
      • [x] Datastore plugins
    • [x] Configuring UI
    • [x] Configuring Store
      • [x] Logging plugins
    • [X] Configuring Queue Service
    • [x] Running locally
    • [x] Configure Build
    • Examples
      • [x] Setting up Kubernetes
    • [ ] Debugging
  • User Guide
    • [x] Quickstart
    • [x] API
    • [x] Authentication and Authorization
    • [x] Configuration
      • [x] Overall YAML
      • [x] Metadata
      • [x] Secrets
    • [x] Templates
    • [x] FAQ
  • About
    • [x] What is SD?
    • [x] Appendix
      • [x] Domain model
      • [x] Execution engines
    • [x] Contributing
    • [x] Support
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].