docs: DOC-1339: Update notebook storage path and add persistence warn… #15312
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Publish CI | |
| on: | |
| push: | |
| branches: [ 'main', 'release/v*' ] | |
| pull_request: | |
| branches: [ 'main', 'rc/v*' ] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: false | |
| jobs: | |
| changes: | |
| runs-on: ubuntu-24.04 | |
| outputs: | |
| non-docs: ${{ steps.filter.outputs.non-docs }} | |
| steps: | |
| # Must checkout for push, but not pull_request according to the action | |
| - name: Checkout | |
| if: github.event_name != 'pull_request' | |
| uses: actions/checkout@v5 | |
| - name: Check for non-docs changes | |
| id: filter | |
| uses: dorny/paths-filter@v3 | |
| with: | |
| filters: | | |
| non-docs: | |
| - '!docs/**' | |
| publish: | |
| needs: changes | |
| if: ${{ needs.changes.outputs.non-docs == 'true' || startsWith(github.ref, 'refs/heads/release/v') }} | |
| runs-on: ubuntu-24.04 | |
| permissions: | |
| id-token: write | |
| steps: | |
| - name: Free Disk Space | |
| uses: endersonmenezes/free-disk-space@v3 | |
| with: | |
| remove_haskell: true | |
| remove_folders: "/usr/share/swift /usr/share/miniconda /usr/share/az* /usr/local/share/chromium /usr/local/share/powershell /usr/local/julia /usr/local/aws-cli /usr/share/gradle" | |
| testing: false | |
| - name: Starting available disk space | |
| run: df -h | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Setup JDKs | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'temurin' | |
| java-version: | | |
| 21 | |
| - name: Setup Gradle | |
| uses: gradle/actions/setup-gradle@v5 | |
| - name: Setup gradle properties | |
| run: | | |
| .github/scripts/gradle-properties.sh 21 >> gradle.properties | |
| cat gradle.properties | |
| - name: Setup Node for deployment to npmjs | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version-file: 'web/client-api/types/.nvmrc' | |
| registry-url: 'https://registry.npmjs.org' | |
| # TODO(deephaven-core#2614): Improve gradle/CI assemble and publishing of artifacts | |
| - name: Build all artifacts, publish to Maven Local | |
| if: ${{ !startsWith(github.ref, 'refs/heads/release/v') }} | |
| run: ./gradlew server-netty-app:build server-jetty-app:build py-server:build py-embedded-server:build py-client:build py-client-ticking:build web-client-api:types:build publishToMavenLocal | |
| - name: Build all artifacts, publish to Sonatype for staging to Maven Central Portal | |
| if: ${{ startsWith(github.ref, 'refs/heads/release/v') }} | |
| # We need to be explicit here about no parallelism to ensure we don't create disjointed staging repositories. | |
| # Edit: unclear if above note is still possible with the new portal API / plugin implementation. | |
| run: ./gradlew --no-parallel server-netty-app:build server-jetty-app:build py-server:build py-embedded-server:build py-client:build py-client-ticking:build web-client-api:types:build publishToMavenCentral | |
| env: | |
| ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.MAVEN_CENTRAL_USERNAME }} | |
| ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} | |
| ORG_GRADLE_PROJECT_signingKey: ${{ secrets.CI_AT_DEEPHAVEN_KEY }} | |
| ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.CI_AT_DEEPHAVEN_PASSWORD }} | |
| ORG_GRADLE_PROJECT_signingRequired: true | |
| - name: Upload Artifacts | |
| if: ${{ startsWith(github.ref, 'refs/heads/release/v') }} | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: artifacts | |
| path: | | |
| server/jetty-app/build/distributions/ | |
| py/server/build/wheel/ | |
| py/embedded-server/build/wheel/ | |
| py/client/build/wheel/ | |
| py/client-ticking/build/wheel/ | |
| web/client-api/types/build/*.tgz | |
| - name: Publish deephaven-core to PyPi | |
| id: publish-deephaven-core | |
| if: ${{ startsWith(github.ref, 'refs/heads/release/v') }} | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| packages_dir: py/server/build/wheel/ | |
| continue-on-error: true | |
| - name: Publish deephaven-server to PyPi | |
| id: publish-deephaven-server | |
| if: ${{ startsWith(github.ref, 'refs/heads/release/v') }} | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| packages_dir: py/embedded-server/build/wheel/ | |
| continue-on-error: true | |
| - name: Publish pydeephaven to PyPi | |
| id: publish-pydeephaven | |
| if: ${{ startsWith(github.ref, 'refs/heads/release/v') }} | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| packages_dir: py/client/build/wheel/ | |
| continue-on-error: true | |
| - name: Publish pydeephaven-ticking to PyPi | |
| id: publish-pydeephaven-ticking | |
| if: ${{ startsWith(github.ref, 'refs/heads/release/v') }} | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| packages_dir: py/client-ticking/build/wheel/ | |
| continue-on-error: true | |
| - name: Publish @deephaven/jsapi-types to npmjs | |
| id: publish-deephaven-jsapi-types | |
| if: ${{ startsWith(github.ref, 'refs/heads/release/v') }} | |
| run: npm publish --provenance --tag latest web/client-api/types/build/deephaven-jsapi-types-*.tgz | |
| continue-on-error: true | |
| - uses: slackapi/slack-github-action@v2.1.0 | |
| if: ${{ steps.publish-deephaven-core.outcome == 'failure' }} | |
| with: | |
| webhook: ${{ secrets.SLACK_WEBHOOK_URL_PUBLISH_FAILURE }} | |
| webhook-type: webhook-trigger | |
| payload: | | |
| step_id: "${{ steps.publish-deephaven-core.id }}" | |
| action_url: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" | |
| - uses: slackapi/slack-github-action@v2.1.0 | |
| if: ${{ steps.publish-deephaven-server.outcome == 'failure' }} | |
| with: | |
| webhook: ${{ secrets.SLACK_WEBHOOK_URL_PUBLISH_FAILURE }} | |
| webhook-type: webhook-trigger | |
| payload: | | |
| step_id: "${{ steps.publish-deephaven-server.id }}" | |
| action_url: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" | |
| - uses: slackapi/slack-github-action@v2.1.0 | |
| if: ${{ steps.publish-pydeephaven.outcome == 'failure' }} | |
| with: | |
| webhook: ${{ secrets.SLACK_WEBHOOK_URL_PUBLISH_FAILURE }} | |
| webhook-type: webhook-trigger | |
| payload: | | |
| step_id: "${{ steps.publish-pydeephaven.id }}" | |
| action_url: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" | |
| - uses: slackapi/slack-github-action@v2.1.0 | |
| if: ${{ steps.publish-pydeephaven-ticking.outcome == 'failure' }} | |
| with: | |
| webhook: ${{ secrets.SLACK_WEBHOOK_URL_PUBLISH_FAILURE }} | |
| webhook-type: webhook-trigger | |
| payload: | | |
| step_id: "${{ steps.publish-pydeephaven-ticking.id }}" | |
| action_url: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" | |
| - uses: slackapi/slack-github-action@v2.1.0 | |
| if: ${{ steps.publish-deephaven-jsapi-types.outcome == 'failure' }} | |
| with: | |
| webhook: ${{ secrets.SLACK_WEBHOOK_URL_PUBLISH_FAILURE }} | |
| webhook-type: webhook-trigger | |
| payload: | | |
| step_id: "${{ steps.publish-deephaven-jsapi-types.id }}" | |
| action_url: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" |