Build theme package on Github Action (#308)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 2e57a74..c974e8f 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -53,12 +53,12 @@
echo "Here was the contents of the ./docs-archive directory" >> ./dist/docs/index.html
find ./dist/
- uses: actions/upload-artifact@v2
- name: Upload documentation as artifact
+ name: Upload website as artifact
if: ${{ github.event_name == 'pull_request' }}
with:
name: airflow-website
path: './dist'
- - name: Deploy documentation on asf-site branch
+ - name: Deploy website on asf-site branch
uses: s0/git-publish-subdir-action@develop
if: ${{ github.event_name == 'push' }}
env:
@@ -66,3 +66,45 @@
BRANCH: asf-site
FOLDER: dist
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - name: Copy files from site to theme
+ run: ./site.sh prepare-theme
+ - name: Prepare sphinx_airflow_theme package
+ working-directory: sphinx_airflow_theme
+ run: |
+ python3 -m pip install --user --upgrade setuptools wheel
+ python3 setup.py sdist bdist_wheel
+ - uses: actions/upload-artifact@v2
+ name: Upload sphinx_airflow_theme package as artifact
+ with:
+ name: airflow-sphinx-theme
+ path: './sphinx_airflow_theme/dist'
+ - name: Build theme demo
+ working-directory: sphinx_airflow_theme
+ run: |
+ pip install ./dist/sphinx_airflow_theme-*.whl
+ cd demo
+ ./docs.sh build
+ - uses: actions/upload-artifact@v2
+ name: Upload sphinx_airflow_theme demo as artifact
+ with:
+ name: airflow-sphinx-theme-demo
+ path: './sphinx_airflow_theme/demo/_build/html'
+ - name: Create releases on GitHub
+ working-directory: sphinx_airflow_theme
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ GITHUB_COMMIT: ${{ github.sha }}
+ GITHUB_REF: ${{ github.ref }}
+ if: >
+ github.ref == 'refs/heads/master' && github.repository == 'apache/airflow-site' &&
+ github.event_name == 'push'
+ run: |
+ gh auth status
+ gh release delete v0.0.1 -y || true
+ NOTES="Commit: ${GITHUB_COMMIT}
+ Source: ${GITHUB_REF}"
+
+ gh release create v0.0.1 \
+ --title "Latest version" \
+ --notes "${NOTES}" \
+ ./dist/*
diff --git a/sphinx_airflow_theme/README.md b/sphinx_airflow_theme/README.md
index bcd9562..f0f5535 100644
--- a/sphinx_airflow_theme/README.md
+++ b/sphinx_airflow_theme/README.md
@@ -20,25 +20,40 @@
Sphinx theme for Airflow
========================
-Sphinx theme for Apache Airflow website.
+Sphinx theme for Apache Airflow documentation.
-# Getting started
+# Install from sources
In order to start working with the theme, please follow the instructions below.
-1. Make sure that your `python` shell command executes Python3 interpreter. If necessary, use a virtual environment:
- `mkvirtualenv -p python3 <name_of_environment>`
+1. Make sure your `python` shell command executes Python3 interpreter. If necessary, use a virtual environment:
+ ```
+ mkvirtualenv -p python3 <name_of_environment>
+ ```
2. To make Javascript and CSS code available for the theme, run the following command in the root directory:
-
- `./site.sh build-site && ./site.sh prepare-theme`
+ ```
+ ./site.sh build-site && ./site.sh prepare-theme
+ ```
3. To install the required Python packages, in `<ROOT DIRECTORY>/sphinx_airflow_theme` run:
-
- `pip install -e .`
+ ```
+ pip install -e .
+ ```
4. To launch the demo documentation page, in `<ROOT DIRECTORY>/sphinx_airflow_theme/demo` run:
- `./docs.sh build && ./docs.sh preview`
+ ```
+ ./docs.sh build && ./docs.sh preview
+ ```
+
+# Install developer version
+
+To install the latest development version of a theme, run:
+```
+pip install 'https://github.com/apache/airflow-site/releases/download/v0.0.1/sphinx_airflow_theme-0.0.1-py3-none-any.whl'
+```
+Python packages for your PRs is available as downloadable artifact in GitHub Actions after
+the CI builds your PR.
# Theme's source files
diff --git a/sphinx_airflow_theme/demo/awesome-cat.jpg b/sphinx_airflow_theme/demo/awesome-cat.jpg
index b2fce15..09f3e35 100644
--- a/sphinx_airflow_theme/demo/awesome-cat.jpg
+++ b/sphinx_airflow_theme/demo/awesome-cat.jpg
Binary files differ
diff --git a/sphinx_airflow_theme/setup.py b/sphinx_airflow_theme/setup.py
index c466748..09b7769 100644
--- a/sphinx_airflow_theme/setup.py
+++ b/sphinx_airflow_theme/setup.py
@@ -38,7 +38,7 @@
setup(
name='sphinx_airflow_theme',
- version='0.0.01',
+ version='0.0.1',
url='https://github.com/apache/airflow-site/tree/aip-11',
license='Apache License 2.0',
author='Apache Software Foundation',
@@ -51,6 +51,8 @@
package_data={'sphinx_airflow_theme': [
'theme.conf',
'*.html',
+ 'static/_gen/css/*.css',
+ 'static/_gen/js/*.js',
'static/css/*.css',
'static/css/fonts/*.*'
'static/js/*.js',