diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml deleted file mode 100644 index 8517d7bdf7..0000000000 --- a/.github/workflows/deployment.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: Deployment - -on: - push: - branches: - - "master" - - "release/**" - -jobs: - deployment: - runs-on: ubuntu-latest - environment: production - - steps: - - uses: actions/checkout@v4 - with: - submodules: "recursive" - - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: "3.11" - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install tox wheel - - - name: Deployment Tests - env: - TEST_EMAIL_LOGIN: ${{ secrets.TEST_EMAIL_LOGIN }} - TEST_EMAIL_PASSWORD: ${{ secrets.TEST_EMAIL_PASSWORD }} - TEST_EMAIL_IMAP_SERVER: ${{ secrets.TEST_EMAIL_IMAP_SERVER }} - run: | - tox -e testcore - - - name: Build Python source tarball - # run: python setup.py sdist bdist_wheel - run: python setup.py sdist - - - name: Publish package to PyPI - if: ${{ github.ref == 'refs/heads/master' }} - uses: pypa/gh-action-pypi-publish@release/v1 - with: - user: __token__ - password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml deleted file mode 100644 index 4404ad545f..0000000000 --- a/.github/workflows/docs.yml +++ /dev/null @@ -1,109 +0,0 @@ -name: Docs - -on: [push, pull_request] - -jobs: - build: - name: Build Docs - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: "recursive" - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: "3.11" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install tox - - - name: Build docs - run: | - tox -e docs - - - name: Slack Notification - uses: homoluctus/slatify@master - if: failure() - with: - type: ${{ job.status }} - job_name: '*Docs*' - commit: true - url: ${{ secrets.SLACK_BUILD_WEBHOOK }} - token: ${{ secrets.SLACK_GITHUB_TOKEN }} - - - name: Preserve Docs - if: ${{ github.event_name == 'push' }} - run: | - tar -czvf docs.tar.gz -C docs/_build html rtdpage - - - name: Save artifact - if: ${{ github.event_name == 'push' }} - uses: actions/upload-artifact@v3 - with: - name: docs - path: ./docs.tar.gz - - deploy: - name: Deploy Docs - needs: build - runs-on: ubuntu-latest - env: - DOCS_REPO: platformio/platformio-docs - DOCS_DIR: platformio-docs - LATEST_DOCS_DIR: latest-docs - RELEASE_BUILD: ${{ startsWith(github.ref, 'refs/tags/v') }} - if: ${{ github.event_name == 'push' }} - steps: - - name: Download artifact - uses: actions/download-artifact@v3 - with: - name: docs - - name: Unpack artifact - run: | - mkdir ./${{ env.LATEST_DOCS_DIR }} - tar -xzf ./docs.tar.gz -C ./${{ env.LATEST_DOCS_DIR }} - - name: Delete Artifact - uses: geekyeggo/delete-artifact@v2 - with: - name: docs - - name: Select Docs type - id: get-destination-dir - run: | - if [[ ${{ env.RELEASE_BUILD }} == true ]]; then - echo "::set-output name=dst_dir::stable" - else - echo "::set-output name=dst_dir::latest" - fi - - name: Checkout latest Docs - continue-on-error: true - uses: actions/checkout@v4 - with: - repository: ${{ env.DOCS_REPO }} - path: ${{ env.DOCS_DIR }} - ref: gh-pages - - name: Synchronize Docs - run: | - rm -rf ${{ env.DOCS_DIR }}/.git - rm -rf ${{ env.DOCS_DIR }}/en/${{ steps.get-destination-dir.outputs.dst_dir }} - mkdir -p ${{ env.DOCS_DIR }}/en/${{ steps.get-destination-dir.outputs.dst_dir }} - cp -rf ${{ env.LATEST_DOCS_DIR }}/html/* ${{ env.DOCS_DIR }}/en/${{ steps.get-destination-dir.outputs.dst_dir }} - if [[ ${{ env.RELEASE_BUILD }} == false ]]; then - rm -rf ${{ env.DOCS_DIR }}/page - mkdir -p ${{ env.DOCS_DIR }}/page - cp -rf ${{ env.LATEST_DOCS_DIR }}/rtdpage/* ${{ env.DOCS_DIR }}/page - fi - - name: Validate Docs - run: | - if [ -z "$(ls -A ${{ env.DOCS_DIR }})" ]; then - echo "Docs folder is empty. Aborting!" - exit 1 - fi - - name: Deploy to Github Pages - uses: peaceiris/actions-gh-pages@v3 - with: - personal_token: ${{ secrets.DEPLOY_GH_DOCS_TOKEN }} - external_repository: ${{ env.DOCS_REPO }} - publish_dir: ./${{ env.DOCS_DIR }} - commit_message: Sync Docs diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml deleted file mode 100644 index 2e7345632a..0000000000 --- a/.github/workflows/examples.yml +++ /dev/null @@ -1,63 +0,0 @@ -name: Examples - -on: [push, pull_request] - - -jobs: - build: - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, windows-latest, macos-latest] - runs-on: ${{ matrix.os }} - env: - PIO_INSTALL_DEVPLATFORM_OWNERNAMES: "platformio" - PIO_INSTALL_DEVPLATFORM_NAMES: "aceinna_imu,atmelavr,atmelmegaavr,atmelsam,espressif32,espressif8266,nordicnrf52,raspberrypi,ststm32,teensy" - - steps: - - uses: actions/checkout@v4 - with: - submodules: "recursive" - - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: "3.11" - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install tox - - - name: Run on Linux - if: startsWith(matrix.os, 'ubuntu') - run: | - # Free space - sudo apt clean - docker rmi $(docker image ls -aq) - df -h - tox -e testexamples - - - name: Run on macOS - if: startsWith(matrix.os, 'macos') - run: | - df -h - tox -e testexamples - - - name: Run on Windows - if: startsWith(matrix.os, 'windows') - env: - PLATFORMIO_CORE_DIR: C:/pio - PLATFORMIO_WORKSPACE_DIR: C:/pio-workspace/$PROJECT_HASH - run: | - tox -e testexamples - - - name: Slack Notification - uses: homoluctus/slatify@master - if: failure() - with: - type: ${{ job.status }} - job_name: '*Examples*' - commit: true - url: ${{ secrets.SLACK_BUILD_WEBHOOK }} - token: ${{ secrets.SLACK_GITHUB_TOKEN }} diff --git a/.github/workflows/projects.yml b/.github/workflows/projects.yml deleted file mode 100644 index 676efaec12..0000000000 --- a/.github/workflows/projects.yml +++ /dev/null @@ -1,69 +0,0 @@ -name: Projects - -on: [push, pull_request] - -jobs: - build: - strategy: - fail-fast: false - matrix: - project: - - marlin: - repository: "MarlinFirmware/Marlin" - folder: "Marlin" - config_dir: "Marlin" - env_name: "mega2560" - - esphome: - repository: "esphome/esphome" - folder: "esphome" - config_dir: "esphome" - env_name: "esp32-arduino" - - smartknob: - repository: "scottbez1/smartknob" - folder: "smartknob" - config_dir: "smartknob" - env_name: "view" - - espurna: - repository: "xoseperez/espurna" - folder: "espurna" - config_dir: "espurna/code" - env_name: "nodemcu-lolin" - - OpenMQTTGateway: - repository: "1technophile/OpenMQTTGateway" - folder: "OpenMQTTGateway" - config_dir: "OpenMQTTGateway" - env_name: "esp32-m5atom-lite" - os: [ubuntu-latest, windows-latest, macos-latest] - exclude: - - os: windows-latest - project: {"esphome": "", "repository": "esphome/esphome", "folder": "esphome", "config_dir": "esphome", "env_name": "esp32-arduino"} - - runs-on: ${{ matrix.os }} - steps: - - uses: actions/checkout@v4 - with: - submodules: "recursive" - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: 3.11 - - - name: Install PlatformIO - run: pip install -U . - - - name: Check out ${{ matrix.project.repository }} - uses: actions/checkout@v4 - with: - submodules: "recursive" - repository: ${{ matrix.project.repository }} - path: ${{ matrix.project.folder }} - - - name: Install ESPHome dependencies - # Requires esptool package as it's used in a custom prescript - if: ${{ contains(matrix.project.repository, 'esphome') }} - run: pip install esptool==3.* - - - name: Compile ${{ matrix.project.repository }} - run: pio run -d ${{ matrix.project.config_dir }} -e ${{ matrix.project.env_name }} -