Skip to content

OpenStackweb/ironic-website

Repository files navigation

Ironic project website template

This is the Ironic project website.

Overview

Its built using starter template, based on Gatsby and Netlify CMS.

It follows the JAMstack architecture by using Git as a single source of truth, and Netlify for continuous deployment, and CDN distribution.

Prerequisites

Setup

Install yarn on your system: https://yarnpkg.com/en/docs/install

Debian local build (Contributor option Debian)

Install Yarn and NPM

$ sudo apt install yarnpkg npm
$ yarnpkg
$ yarnpkg build

Build and run from Docker/Podman for development

$ podman build -t website .
$ podman run --network=host website

Note: you need host networking as the development server runs on localhost.

Warning: don't use this approach in production.

Deploy to Netlify (option A)

Use the button below to build and deploy your own copy of the repository:

Deploy to Netlify

After clicking that button, you’ll authenticate with GitHub and choose a repository name. Netlify will then automatically create a repository in your GitHub account with a copy of the files from this repository. Next, it will build and deploy the new site on Netlify, bringing you to the site dashboard when the build is complete. Next, you’ll need to set up Netlify’s Identity service to authorize users to log in to the CMS.

Access Locally

Pulldown a local copy of the Github repository Netlify created for you, with the name you specified in the previous step

$ git clone https://github.com/[GITHUB_USERNAME]/[REPO_NAME].git
$ cd [REPO_NAME]
$ yarn
$ netlify dev # or ntl dev

This uses Netlify Dev CLI feature to serve any functions you have in the lambda folder.

To test the CMS locally, you'll need run a production build of the site:

$ npm run build
$ netlify dev # or ntl dev

Install locally (option B)

$ git clone https://github.com/OpenStackweb/osf-website-template
$ yarn 

Available scripts

build

Build the static files into the public folder, turns lambda functions into a deployable form.

Usage

$ yarn build

clean

Runs gatsby clean command.

Usage

yarn clean

netlify dev

Starts the netlify dev environment, including the gatsby dev environment. For more info check the Netlify Dev Docs

netlify dev

develop or start

Runs the clean script and starts the gatsby develop server using the command gatsby develop. We recomend using this command when you don't need Netlify specific features

Usage

yarn develop

format

Formats code and docs according to our style guidelines using prettier

Usage

yarn format

Pull Requests

To request changes, submit an issue or submit a pull request.

Blog Contributions

Blogs can be added to the site by following the format on an existing blog page. Open up a blog post under /src/pages/blog to use as a post to copy and then save that as a new file like ironic-release-1.5.md (use dashes, not underscore and all lowercase). Gatsby is very case sensitive, so be sure not to change variable names in the file. File name should ideally mirror the title in the blog post itself.

Variables/Options

templateKey: blog-post

Should stay "blog-post"

title: Whatever Your Title is

Not case sensitive. Used in SEO

author: My Name

To add an author, create an author md file. Replace spaces with "-". Template key can simply be "tags". Company name is not currently used.

date: 2021-04-16T09:00:00.000Z

Do not change the date format, but update with the correct date and time using 24 hour clock.

category:

'category.label'

This can be with whatever value you want (e.g. 'News & Features'). To see available values, please look at /content/blog-config.json. Note when adding a new value, you must also update the categories.text value on blog-config.json.

'category.id'

This can be with whatever value you want (e.g. 'news-features'). To see available values, please look at /content/blog-config.json. Note when adding a new value, you must also update the categories.id value on blog-config.json.

label: (e.g. Announcements, Community, Release Notice)

You can add whatever category you want and it should show up.

id: (e.g. announcements, community, release-notice)

This should be a lowercase version of the lable with - replacing spaces

About

Website for the OpenStack Ironic project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published