| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. |
| # The ASF licenses this file to You under the Apache License, Version 2.0 |
| # (the "License"); you may not use this file except in compliance with |
| # the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| name: "Build legacy documentation" |
| on: |
| workflow_dispatch: |
| inputs: |
| branch: |
| description: 'Branch to build documentation for' |
| required: true |
| type: choice |
| options: |
| - release-1.18 |
| - release-1.17 |
| - release-1.16 |
| - release-1.15 |
| - release-1.14 |
| - release-1.13 |
| - release-1.12 |
| - release-1.11 |
| - release-1.10 |
| - release-1.9 |
| - release-1.8 |
| - release-1.7 |
| - release-1.6 |
| - release-1.5 |
| - release-1.4 |
| - release-1.3 |
| - release-1.2 |
| - release-1.1 |
| - release-1.0 |
| |
| jobs: |
| build-documentation: |
| if: github.repository == 'apache/flink' |
| runs-on: ubuntu-latest |
| steps: |
| - uses: actions/checkout@v4 |
| with: |
| ref: ${{ inputs.branch }} |
| |
| - name: Set branch environment variable |
| run: | |
| echo "flink_branch=${{ inputs.branch }}" >> ${GITHUB_ENV} |
| |
| - name: Cache Maven dependencies |
| uses: actions/cache@v4 |
| with: |
| path: ~/.m2/repository |
| key: ${{ runner.os }}-maven-docs-legacy-${{ inputs.branch }} |
| restore-keys: | |
| ${{ runner.os }}-maven-docs-legacy- |
| |
| - name: Build Jekyll documentation (release-1.12 and earlier) |
| if: ${{ contains(fromJSON('["release-1.0", "release-1.1", "release-1.2", "release-1.3", "release-1.4", "release-1.5", "release-1.6", "release-1.7", "release-1.8", "release-1.9", "release-1.10", "release-1.11", "release-1.12"]'), inputs.branch) }} |
| run: | |
| cd docs/docker |
| docker build --rm=true -t flink/docs . |
| cd ../.. |
| docker run --rm \ |
| -v "$PWD:/flink" \ |
| -w /flink/docs \ |
| flink/docs \ |
| bash -c "./build_docs.sh" |
| |
| - name: Build documentation |
| run: | |
| docker run --rm \ |
| --volume "$PWD:/root/flink" \ |
| --volume "$HOME/.m2/repository:/root/.m2/repository" \ |
| chesnay/flink-ci:java_8_11_17_21_maven_386_jammy \ |
| bash -c "apt-get update && apt-get install -y rsync && cd /root/flink && ./.github/workflows/docs.sh" |
| |
| - name: Upload documentation |
| uses: burnett01/rsync-deployments@7659d600d8bdd035bb5cdfba1d4bd0dd4a307ca6 # 8.0.2 |
| with: |
| switches: --archive --compress --delete --omit-dir-times |
| path: docs/target/ |
| remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH }}/flink/flink-docs-${{ env.flink_branch }}/ |
| remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }} |
| remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }} |
| remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }} |
| remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }} |