Name: dcos-website
Owner: DC/OS
Description: Source for the official DC/OS website
Created: 2016-03-14 20:59:59.0
Updated: 2018-05-23 23:55:28.0
Pushed: 2018-05-24 20:10:24.0
Homepage: http://dcos.io
Size: 321833
Language: JavaScript
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
| Environment | URL | Build Status | |————-|—–|————–| | Production | https://dcos.io | | | Development | https://dev.dcos.io | |
Please report issues in the DCOS JIRA instance (Project: DCOS_SITE). Issues on GitHub will be disabled soon.
Table of contents:
Add repo fork as remote repo:
remote add fork https://github.com/<github-user>/dcos-website
fetch fork
Checkout the develop branch:
checkout develop
Create a new feature branch:
checkout -b feature/<feature-name>
Make local changes.
Test your changes locally.
Add and commit changes:
add -p .
commit
Rebase repo fork to include recent dcos/dcos-website:develop
changes. Rebasing a repo (instead of merging) will keep your fork commit history clean and move all your changes to the top of the commit log.
fetch origin
pull --rebase origin develop
Tip: May require resolving conflicts.
Push changes to repo fork feature branch:
push -u fork feature/<feature-name>
Create a pull request from the repo fork feature branch to dcos/dcos-website:develop
.
Once changes are accepted and merged to the develop branch, CI will push the updates to https://dev.dcos.io/.
Build a local version of the doc site. The DC/OS website can be built locally using Node or run in an Nginx Docker container.
Using Easy Mode
Run dev server
Go to running server
Using Node
Install dependencies:
install
Launch local dev server:
start
(opens dev server in browser)
Verify changes on localhost server (updates automatically when files are changed).
Using an Nginx Docker image
Configure your shell:
$(/usr/local/bin/docker-machine env default)
Build the website server Docker image:
ocker-build-image.sh
Run the website server in Docker:
ER_CID="$(ci/docker-run.sh)"
By default, the server runs on port 80. You can find the server IP by running
er-machine ip default
Stop the website server:
er rm -f "${SERVER_CID}"
To promote the dev site to live, rebase develop
to master
:
t checkout develop
t pull
/promote.sh
Continuous integration will handle deploying updates (ci/deploy.sh
), updating redirects (ci/update-redirects.sh
), and updating the S3 website config (ci/update-website-conifg.sh
).
There are two types of redirects, stored in two different files:
https://github.com/dcos/dcos-website/redirect-files
https://github.com/dcos/dcos-website/redirect-prefixes
That both use following format:
m/ /to/
Both types of redirects are processed and used in the S3, npm/gulp, and docker/nginx environments.
The “current” version of DC/OS that corresponds to /docs/latest/
is managed in the redirect-prefixes
file.
To create a new version picker dropdown item, modify layouts/docs.jade
and gulpfile.js
.
When a new version GAs, modify the redirect-prefixes
file. For example, this denotes that 1.8 is the default version:
s/latest/ /docs/1.8/
Validating links requires building and running a local site. You can run a local site as a standalone process or alternatively as a part of a docs build.
Build the website server Docker image:
ocker-build-image.sh
Start the website server in Docker and remember the container ID:
ER_CID="$(PORT=3000 ci/docker-run.sh)"
Run link validation in Docker:
ocker-validate-links.sh
Stop the website server
er rm -f "${SERVER_CID}"
Built using Metalsmith.
Copyright 2017 Mesosphere, Inc.
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this repository except in compliance with the License.
The contents of this repository are solely licensed under the terms described in the LICENSE file included in this repository.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Authors are listed in AUTHORS.md file.