You can see progress on tasks at http://waffle.io/devopsdays/devopsdays-web
This is the website for devopsdays.org
If you'd like to edit a specific devopsdays event site (and/or contribute code), here's how to get started:
- Install Hugo v0.15+
- Fork this repo
- To watch for changes and rebuild on the fly, open a new terminal, cd to your fork of the repo, and enter this command:
hugo server -w --baseUrl="http://localhost:1313"
- OS X has low ulimits, so you may see this message:
hugo server -w --baseUrl="http://localhost:1313”
[...]
Error: listen tcp 127.0.0.1:1313: socket: too many open files
You can correct it with this:
$ hugo check ulimit
$ sudo sysctl -w kern.maxfiles=65536
$ sudo sysctl -w kern.maxfilesperproc=65536
$ ulimit -n 65536 65536
Then in a new window:
$ hugo server -w --baseUrl="http://localhost:1313"
- Code changes that affect the overall site will be reviewed only if they are in a separate pull request from any event-specific content. tl;dr: don't add "giant template change" in the same PR as "here are some more sponsors". If it affects anything other than your event, it should be in its own PR.
- We use github issues to track work, so feel free to create new ones if you like (or read/comment on existing ones).
- Before you commit any changes, create a new branch, i.e.,
git checkout -b fix-that-thing
- Make your changes, test them locally, then push that branch up to origin on your fork (
git push origin BRANCHNAME
) - Submit a pull request from the branch you just pushed
- When a commit is merged to master on github (ideally via a PR reviewed by at least one other person), wercker will automatically build the site and publish it to http://www.devopsdays.org.
The easiest way to create a new event is with the make_new_event.sh script. Create a branch, run the script to make a skeleton site for your event, make any desired edits, and submit a PR as explained above.
- If your city name has special characters or diacritics, the script will remove them when it creates the event stub.
- Events need a data file in
data/events
, for example,data/events/2015-chicago.yml
. It must be the same name as the directory you will create for your event. See the template data file for an example. - When the script copies the content directory from the sample site to
content/events/YYYY-city
, it removesdraft = true
from the frontmatter of the pages (so they will be built). Also, thewelcome.md
file needs to have a field added to its frontmatter for the alias, i.e.,aliases = ["/events/2015-chicago"]
.
Once you have created a logo graphic, you will want to add it to the following directory (creating the directory if necessary) /static/events/yyyy-city/logo.png
. The file MUST be called logo.png
.
Sponsors each need a file in the data directory, as such: data/sponsors/chef.yml
. Please make sure to use the year for the sponsor (just so that the old events don't end up with newer sponsor logos, etc - but don't make one just for your city). If there is an existing sponsor and you can use it, you do not need to create the data file (or the image). If your information is different, please create a new file, such as data/sponsors/chefchicago.yml
. (Note: there is an experimental feature for an "override" of the sponsor data; more on this feature as it is developed)
Put the images for your sponsors in the /static/img/sponsors
directory. They need to be PNG files and named exactly after the name of the sponsor in your event file (and the corresponding sponsor data file), i.e., /static/img/sponsors/chef.png
.
There are a few simple guidelines regarding sponsor logo files and formatting:
- The dimensions of the image file must be 200px square.
- The background must be either white or transparent.
- There must not be a border.
All logos will be constrained, via markup, to 100px square; combined with the image file dimensions, this allows for high-density displays (ex. Retina). A border will be drawn around the logo using CSS.
The program is driven by the program.md file in your event (copied from the sample program.md. To generate a data-driven program, look at the Minneapolis 2016 speakers data files and program directory.
Generally speaking, you should avoid storing any files other than logos or small images inside the repo itself (out of consideration for your fellow devopsdays organizers who have to pull down this repo). Please follow these guidelines:
- Do not upload presentations, artifacts from your event, etc. Either link to the preso on Speakerdeck/Slideshare from the presenter, or even better, create a Speakerdeck account for your event and put the presos there.
- Small, web images are fine (logos, etc). If you have high-resolution versions of your logo to share with others, please do not host them on the devopsdays-web repo.
- It is acceptable to add in a single PDF for your sponsor prospectus if you desire (in
/static/events/YYYY-city
), but please keep this file under 3 MB. It is better to host it on Google Drive or something similar, and then link to it from your site.