GithubHelp home page GithubHelp logo

isabella232 / spinnaker.github.io Goto Github PK

View Code? Open in Web Editor NEW

This project forked from locationlabs/spinnaker.github.io

0.0 0.0 0.0 88.19 MB

spinnaker documentation site

License: MIT License

Dockerfile 0.02% Ruby 0.07% HTML 83.65% CSS 0.69% JavaScript 1.38% SCSS 2.03% Mustache 12.17%

spinnaker.github.io's Introduction

Local preview

The easiest way to preview and test your changes to Spinnaker.io is to run your branch locally with Docker, via the dockerfile included in the root directory.

In the root directory of your fork, run:

docker build --tag spinnaker/spinnaker.github.io-test .
docker run -it --rm --mount "type=bind,source=$(pwd),target=/code" \
    -p 4000:4000 spinnaker/spinnaker.github.io-test --incremental

Navigate to http://localhost:4000 to see your locally generated page.

Jekyll method

Alternatively, set up Jekyll and use it to run the site locally. It runs on Ruby, and running multiple versions of Ruby on a single system can create challenges. These instructions install rbenv, which makes it easy to install and switch to a specific Ruby version.

Installation

  1. (Optional) Create and run from a fresh VM instance, and forward the Jekyll default port (4000):
    1. gcloud compute instances create jekyll --image-project=ubuntu-os-cloud --image-family=ubuntu-1804-lts --machine-type=n1-standard-1
    2. gcloud compute ssh jekyll --ssh-flag="-L 4000:localhost:4000"
  2. Install rbenv and ruby-build. Add these to $PATH:
    sudo apt update
    sudo apt-get install -y git bzip2 build-essential libssl-dev libreadline-dev zlib1g-dev
    git clone https://github.com/rbenv/rbenv.git ~/.rbenv
    git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
    echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
    echo 'eval "$(rbenv init -)"' >> ~/.bashrc
    source ~/.bashrc
    
  3. Install and use ruby 2.4.1
    rbenv install 2.4.1
    rbenv global 2.4.1
    
  4. Fork and clone your forked repo:
    GITHUB_USER=$USER # or something else here
    git clone https://github.com/$GITHUB_USER/spinnaker.github.io.git
    
  5. Install bundle gem
    cd spinnaker.github.io
    gem install bundler
    bundle install
    

Your system is now ready for local preview of the documentation site.

Local preview

  1. Start Jekyll server
    1. bundle exec jekyll serve --watch
  2. (Optional): Add --incremental to speed up page generation when working on one page
    1. bundle exec jekyll serve --watch --incremental
  3. Navigate to http://localhost:4000 to see your locally generated page.

(Optional) Host the website on Amazon S3

Hosting the documentation website on Amazon S3 allows review from look/feel perspective before a pull request is submitted. This allows peer reviews of a breaking change without needing any technical setup by the reviewer.

  1. Enable static website hosting on a S3 Bucket
  2. gem install s3_website
  3. s3_website cfg create
  4. Delete s3_id and s3_secret so that your AWS credentials can be read from ~/.aws/credentials
  5. Modify url property at _config.yml to use the CNAME that you want to use
  6. jekyll build
  7. s3_website push

Page Generation

A page named foo.md will be transformed to foo/index.html and links to foo will result in an HTTP 301 to foo/. This has two implications:

  1. It is more efficient to include the trailing / in links.
  2. If you anticipate including resources like images or subpages, create foo/index.md instead of foo.md.

During local development, see what's actually generated by browsing the _site directory.

Mermaid

Sequence diagrams can be generated with the mermaid.js library by adding {% include mermaid %} near the bottom of the page. See some of the security docs for an example.

Breadcrumbs

Each page has a breadcrumb trail at the top that is based on the URL structure. You should ensure that there is at least an index.md file within each URL directory, otherwise the links will break.

Link Checker

Keep the "broken window theory" at bay by ensuring all links work with HTML Proofer

Run link checker before committing: rake test

spinnaker.github.io's People

Contributors

lwander avatar dorbin avatar skim1420 avatar maggieneterval avatar ezimanyi avatar danielpeach avatar avh121 avatar spinnaker-release avatar ethanfrogers avatar aimeeu avatar stephly07 avatar plumpy avatar dnilasor avatar jtk54 avatar robzienert avatar brandonnelson3 avatar ajordens avatar louisjimenez avatar stewchen avatar tomaslin avatar emjburns avatar aglover avatar 317brian avatar aleon1220 avatar stuposluns avatar kevinawoo avatar mrtrustor avatar joonlim avatar davidxia avatar clareliguori avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.