Skip to content
This repository has been archived by the owner on May 26, 2022. It is now read-only.

mozmeao/lumbergh

Repository files navigation

Lumbergh

What's Deployed? Documentation RTFM Pipeline

Lumbergh is a Django based App for https://careers.mozilla.org. Follow the Setup your environment for development instructions to improve the website and fix errors.

Careers.mozilla.org website is a static website which is automatically generated from its Django counterpart. If you're interested to learn how what works and how to debug potential issues visit the Career's Mana Page

Setup your environment for development

  1. Get Docker and Docker Compose
  2. Run Build command
  3. Create local .env file (optional)
  4. Run the website

Commands

Build

docker-compose build

Create local .env file

You probably want to add a couple local environment settings to improve local dev:

  1. In the root of the project, create a file named .env
  2. Add ENGAGE_ROBOTS=False - this will prevent robots from indexing the site if you happen to build locally and push to a URL that shouldn't be indexed.
  3. Add SKIP_POSTS=True - this will avoid hitting the Wordpress API with each load of the home page (making page loads much faster). Change to False and re-start the server to fetch blog posts.

Run the website locally

docker-compose up

Run the tests

docker-compose run web ./manage.py test

Sync with Greenhouse

docker-compose run web ./manage.py sync_greenhouse

Close everything

docker-compose stop

Testing the static build locally

Ensure the site is running via docker-compose up, then:

  1. Get a command line inside the Docker container: docker exec -it lumbergh_web_1 /bin/bash
  2. In the Docker container, build the site: ./bin/mirror.sh - this will create a _site folder in the root of your project
  3. On your machine, cd _site and start a little web server: python -m SimpleHTTPServer 8001 (or python -m http.server 8001 if you're on python 2.7)
  4. Open your browser to http://localhost:8001 and you should see the newly built static site.

Pushing to production

  1. Verify all is good on the staging site
  2. Make sure your local master branch is up to date
  3. Push the master branch to the prod branch: git push origin master:prod

You can watch the deployment on GitLab. A notice will be posted in #careers-notify on Slack when the push has completed.

Code of Conduct

This repository is governed by Mozilla's Community Participation Guidelines and Developer Etiquette Guidelines.