@@ -3,6 +3,9 @@ name: mkdocs-release
33on :
44 push :
55 branches : [branch-*\.*]
6+ repository_dispatch :
7+ types :
8+ - trigger-rebuild
69
710concurrency :
811 group : ${{ github.workflow }}
@@ -13,25 +16,72 @@ jobs:
1316 runs-on : ubuntu-latest
1417
1518 steps :
16- - uses : actions/checkout@v4
19+ - name : Extract branch name (push)
20+ if : ${{ github.event_name == 'push' }}
21+ run : echo "BRANCH=${GITHUB_REF#refs/heads/}}" >> "$GITHUB_ENV"
22+
23+ - name : Extract branch name (repository_dispatch)
24+ if : ${{ github.event_name == 'repository_dispatch' }}
25+ run : echo "BRANCH=${{ github.event.client_payload.branch }}" >> "$GITHUB_ENV"
26+
27+ - name : Extract version from branch name
28+ run : echo "HOPSWORKS_VERSION=${BRANCH#branch-}}" >> "$GITHUB_ENV"
29+
30+ - name : Checkout main repo
31+ uses : actions/checkout@v4
1732 with :
1833 fetch-depth : 0
34+ ref : ${{ env.BRANCH }}
35+
36+ - name : Checkout the API repo
37+ uses : actions/checkout@v4
38+ with :
39+ # TODO: replace aversey with logicalclocks
40+ repository : aversey/hopsworks-api
41+ ref : ${{ env.BRANCH }}
42+ path : hopsworks-api
43+
44+ - name : Cache local Maven repository
45+ uses : actions/cache@v4
46+ with :
47+ path : ~/.m2/repository
48+ key : ${{ runner.os }}-maven-${{ hashFiles('java/pom.xml') }}
49+ restore-keys : |
50+ ${{ runner.os }}-maven-
51+
52+ - name : Set up JDK 8
53+ uses : actions/setup-java@v5
54+ with :
55+ java-version : " 8"
56+ distribution : " adopt"
57+
58+ - name : Build javadoc documentation
59+ working-directory : hopsworks-api/java
60+ run : mvn clean install javadoc:javadoc javadoc:aggregate -DskipTests && cp -r target/site/apidocs ../../docs/javadoc
1961
2062 - uses : actions/setup-python@v5
2163 with :
2264 python-version : " 3.10"
2365
24- - name : Install ubuntu dependencies
25- run : sudo apt update && sudo apt-get install -y libxml2-dev libxslt-dev
66+ - name : Install uv
67+ uses : astral-sh/setup-uv@v7
68+ with :
69+ activate-environment : true
70+ working-directory : hopsworks-api/python
2671
27- - name : install deps
28- run : pip3 install -r requirements-docs.txt
72+ - name : Install Python API dependencies
73+ run : uv sync --extra dev --group docs --project hopsworks-api/python
74+
75+ - name : Install Python dependencies
76+ run : uv pip install -r requirements-docs.txt
77+
78+ - name : Install Ubuntu dependencies
79+ run : sudo apt update && sudo apt-get install -y libxml2-dev libxslt-dev
2980
30- - name : setup git
81+ - name : Setup git for mike
3182 run : |
3283 git config --global user.name Mike
3384 git config --global user.email mike@docs.hopsworks.ai
3485
35- # Put this back and increment version when cutting a new release branch
36- # - name: mike deploy docs
37- # run: mike deploy 3.0 latest -u --push
86+ - name : Deploy the docs with mike
87+ run : mike deploy ${HOPSWORKS_VERSION} latest -u --push
0 commit comments