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
You probably want to add a couple local environment settings to improve local dev:
- In the root of the project, create a file named
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.
SKIP_POSTS=True- this will avoid hitting the Wordpress API with each load of the home page (making page loads much faster). Change to
Falseand re-start the server to fetch blog posts.
Run the website locally
Run the tests
docker-compose run web ./manage.py test
Sync with Greenhouse
docker-compose run web ./manage.py sync_greenhouse
Testing the static build locally
Ensure the site is running via
docker-compose up, then:
- Get a command line inside the Docker container:
docker exec -it lumbergh_web_1 /bin/bash
- In the Docker container, build the site:
./bin/mirror.sh- this will create a
_sitefolder in the root of your project
- On your machine,
cd _siteand start a little web server:
python -m SimpleHTTPServer 8001(or
python -m http.server 8001if you're on python 2.7)
- Open your browser to
http://localhost:8001and you should see the newly built static site.
Pushing to production
- Verify all is good on the staging site
- Make sure your local master branch is up to date
- 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.