diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
new file mode 100644
index 0000000..0c49d64
--- /dev/null
+++ b/.github/workflows/deploy.yml
@@ -0,0 +1,73 @@
+# Workflow to build and deploy to GitHub Pages, with previews for PRs
+# Based on https://github.com/daiyi/gh-pages-pr-previews
+
+name: github pages
+
+on:
+ push:
+ branches:
+ - main
+ pull_request:
+
+jobs:
+ deploy:
+ runs-on: ubuntu-20.04
+ env:
+ PR_PATH: pull/${{github.event.number}}
+ steps:
+ - name: Comment on PR
+ uses: hasura/comment-progress@v2.2.0
+ if: github.ref != 'refs/heads/main'
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ repository: ${{ github.repository }}
+ number: ${{ github.event.number }}
+ id: deploy-preview
+ message: "Starting deployment of preview ⏳..."
+
+ - name: Set domain
+ run: echo "DOMAIN=osep.elisa.tech" >> $GITHUB_ENV
+
+ - name: Set base URL for preview if PR
+ if: github.ref != 'refs/heads/main'
+ run: echo "BASE_URL=https://${{ env.DOMAIN }}/${{ env.PR_PATH}}/" >> $GITHUB_ENV
+
+ - name: Setup python
+ uses: actions/setup-python@v5
+ with:
+ python-version: 3.x
+
+ - name: Checkout the triggering ref
+ uses: actions/checkout@v4
+
+ - name: Build site
+ run: |
+ pip install -r docs/requirements.txt
+ mkdocs build
+
+ - name: Deploy if this is the `main` branch
+ uses: peaceiris/actions-gh-pages@v3
+ if: github.ref == 'refs/heads/main'
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./public
+ cname: ${{ env.DOMAIN }}
+
+ - name: Deploy to PR preview
+ uses: peaceiris/actions-gh-pages@v3
+ if: github.ref != 'refs/heads/main'
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./public
+ destination_dir: ${{ env.PR_PATH }}
+ keep_files: true
+
+ - name: Update comment
+ uses: hasura/comment-progress@v2.2.0
+ if: github.ref != 'refs/heads/main'
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ repository: ${{ github.repository }}
+ number: ${{ github.event.number }}
+ id: deploy-preview
+ message: "A preview of ${{ github.event.after }} is here:\n\n ✨ ${{ env.BASE_URL }}"
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
deleted file mode 100644
index bae05ab..0000000
--- a/.github/workflows/main.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-name: CI
-
-# Controls when the workflow will run
-on:
- # Triggers the workflow on push or pull request events but only for the main branch
- push:
- branches: [ main ]
- pull_request:
- branches: [ main ]
-
- # Allows you to run this workflow manually from the Actions tab
- workflow_dispatch:
-
-# A workflow run is made up of one or more jobs that can run sequentially or in parallel
-jobs:
- # This workflow contains a single job called "build"
- build:
- # The type of runner that the job will run on
- runs-on: ubuntu-latest
-
- env:
- STPATOOLS_VERSION: "42e07abc5510f5864aa102aa7ae1e8349911a620"
- STPATOOLS_REPO: "https://gitlab.com/CodethinkLabs/stpatools.git"
-
- # Steps represent a sequence of tasks that will be executed as part of the job
- steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@v2
-
- # Check that YAML files are well-formed
- - name: YAML lint
- run: yamllint -d relaxed .
-
- # Install specific version of ruamel.yaml required by STPAtools
- - name: Install ruamel.yaml
- run: pip3 install ruamel.yaml==0.16.7
-
- # Install specific version of STPA tools from repo
- - name: Install STPA tools
- run: pip3 install "git+${{env.STPATOOLS_REPO}}@${{env.STPATOOLS_VERSION}}"
-
- # Validate STPA files
- - name: Validate STPA files (STPA_DynMA)
- run: stpa-validate STPA_DynMA/*.yml
diff --git a/.github/workflows/pr-close.yml b/.github/workflows/pr-close.yml
new file mode 100644
index 0000000..c508d2d
--- /dev/null
+++ b/.github/workflows/pr-close.yml
@@ -0,0 +1,34 @@
+# Workflow to clean up PR previews
+# Based on https://github.com/daiyi/gh-pages-pr-previews
+
+name: delete preview on PR close
+
+# only trigger on pull request closed events
+on:
+ pull_request:
+ types: [closed]
+
+jobs:
+ delete_preview:
+ runs-on: ubuntu-20.04
+ env:
+ PR_PATH: pull/${{github.event.number}}
+ steps:
+ - name: make empty dir
+ run: mkdir public
+
+ - name: delete folder
+ uses: peaceiris/actions-gh-pages@v3
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./public
+ destination_dir: ${{ env.PR_PATH }}
+
+ - name: Comment on PR
+ uses: hasura/comment-progress@v2.2.0
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ repository: ${{ github.repository }}
+ number: ${{ github.event.number }}
+ id: deploy-preview
+ message: "🪓 PR closed, deleted preview content from gh-pages"
diff --git a/docs/CNAME b/docs/CNAME
new file mode 100644
index 0000000..09c6e78
--- /dev/null
+++ b/docs/CNAME
@@ -0,0 +1 @@
+osep.elisa.tech
diff --git a/docs/images/elisa-horizontal-color.svg b/docs/images/elisa-horizontal-color.svg
new file mode 100644
index 0000000..1c058e1
--- /dev/null
+++ b/docs/images/elisa-horizontal-color.svg
@@ -0,0 +1,190 @@
+
+
diff --git a/docs/images/elisa-logo.svg b/docs/images/elisa-logo.svg
new file mode 100644
index 0000000..e6048c7
--- /dev/null
+++ b/docs/images/elisa-logo.svg
@@ -0,0 +1,72 @@
+
+
+
+
diff --git a/docs/images/favicon.ico b/docs/images/favicon.ico
new file mode 100644
index 0000000..978b94d
Binary files /dev/null and b/docs/images/favicon.ico differ
diff --git a/docs/index.md b/docs/index.md
new file mode 100644
index 0000000..2697e5b
--- /dev/null
+++ b/docs/index.md
@@ -0,0 +1,18 @@
+![ELISA - Enabling Linux in Safety Applications](images/elisa-horizontal-color.svg){: .elisa-title-image }
+
+# Welcome to OSEP
+
+This is the home of the **Open Source Engineering Process (OSEP)** working
+group, part of the Linux Foundation's [ELISA](https://elisa.tech/) project
+
+This working group examines how software engineering processes can be used to
+facilitate the certification of safety-related systems incorporating Linux and
+other FOSS. We consider the roles that a Linux-based OS might have in such
+systems; how FOSS developers, system integrators and product creators can
+specify these roles; and the evidence they might need to provide to support
+associated safety arguments.
+
+Use the menu on the left to navigate within the site, and the _Table of
+contents_ on the right to browse within a page. Alternatively, type what you
+are looking for in the _Search_ box above.
+
diff --git a/docs/requirements.txt b/docs/requirements.txt
new file mode 100644
index 0000000..568e293
--- /dev/null
+++ b/docs/requirements.txt
@@ -0,0 +1,4 @@
+mkdocs==1.6.0
+mkdocs-material==9.5.22
+mkdocs-material-extensions==1.3.1
+pymdown-extensions==10.12
diff --git a/docs/stylesheets/elisa.css b/docs/stylesheets/elisa.css
new file mode 100644
index 0000000..9d3660b
--- /dev/null
+++ b/docs/stylesheets/elisa.css
@@ -0,0 +1,47 @@
+ :root {
+
+ --elisa-green: #77c046;
+
+ --md-default-fg-color: slategrey;
+ --md-default-bg-color: white;
+
+ --md-primary-fg-color: black;
+ --md-primary-bg-color: var(--elisa-green);
+
+ --md-typeset-a-color: darkgreen;
+ --md-accent-fg-color: var(--elisa-green);
+
+ }
+
+.md-typeset__table {
+ min-width: 100%;
+}
+
+.md-typeset table:not([class]) {
+ display: table;
+ border: none;
+}
+
+td {
+ background-color: #f0f0f0;
+ margin: 2px;
+}
+
+th {
+ background-color: darkgreen;
+ color: var(--elisa-green);
+}
+
+th:first-child {
+ border-top-left-radius: 10px;
+}
+
+th:last-child {
+ border-top-right-radius: 10px;
+}
+
+.elisa-title-image {
+ width: 50%;
+ float: right;
+ padding-left: 10px;
+}
diff --git a/mkdocs.yml b/mkdocs.yml
new file mode 100644
index 0000000..302b156
--- /dev/null
+++ b/mkdocs.yml
@@ -0,0 +1,39 @@
+site_name: ELISA - Open Source Engineering Process
+repo_url: https://github.com/elisa-tech/wg-osep
+site_url: !ENV [BASE_URL, https://osep.elisa.tech/]
+site_dir: public
+
+theme:
+ name: material
+ logo: images/elisa-logo.svg
+ favicon: images/favicon.ico
+ icon:
+ repo: fontawesome/brands/github
+ font:
+ text: Open Sans
+ code: Fira Code
+ features:
+ - content.code.copy
+ - content.code.annotate
+ - navigation.footer
+ - navigation.top
+
+extra_css:
+ - stylesheets/elisa.css
+
+use_directory_urls: false
+
+plugins:
+ - search
+
+markdown_extensions:
+ - attr_list
+ - pymdownx.pathconverter:
+ absolute: true
+
+nav:
+ - ELISA: https://elisa.tech/
+ - OSEP:
+ - Home: index.md
+
+