Skip to content

Commit

Permalink
MycilaESPConnect - ESPConnect on steroids!
Browse files Browse the repository at this point in the history
  • Loading branch information
mathieucarbou committed Jan 22, 2024
1 parent a0c1bd7 commit ecc89c0
Show file tree
Hide file tree
Showing 32 changed files with 3,950 additions and 2,534 deletions.
2 changes: 0 additions & 2 deletions .gitattributes

This file was deleted.

12 changes: 11 additions & 1 deletion .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
# These are supported funding model platforms

custom: [ 'https://www.buymeacoffee.com/6QGVpSj', 'https://www.paypal.me/ayushsharma82' ]
github: mathieucarbou
# patreon: # Replace with a single Patreon username
# open_collective: # Replace with a single Open Collective username
# ko_fi: # Replace with a single Ko-fi username
# tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
# community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
# liberapay: # Replace with a single Liberapay username
# issuehunt: # Replace with a single IssueHunt username
# otechie: # Replace with a single Otechie username
# lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: https://paypal.me/mathieucarboufr
20 changes: 20 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "gitsubmodule"
directory: "/"
schedule:
interval: "daily"
reviewers:
- "mathieucarbou"

- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
reviewers:
- "mathieucarbou"
5 changes: 0 additions & 5 deletions .github/scripts/dep-install.sh

This file was deleted.

151 changes: 119 additions & 32 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,45 +1,132 @@
name: Arduino Library CI
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json

on:
name: Continuous Integration

on:
workflow_dispatch:
push:
paths-ignore:
- '**/**.md'
- '/keywords.txt'
- '/library.json'
- '/library.properties'
- '/ui'
- '/docs'
pull_request:
paths-ignore:
- '**/**.md'
- '/keywords.txt'
- '/library.json'
- '/library.properties'
- '/ui'
- '/docs'

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
build:
cpplint:
name: cpplint
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Cache
uses: actions/cache@v4
with:
key: ${{ runner.os }}-cpplint
path: ~/.cache/pip

- name: Pyhton
uses: actions/setup-python@v5
with:
python-version: "3.x"

- name: cpplint
run: |
python -m pip install --upgrade pip
pip install --upgrade cpplint
cpplint \
--repository=. \
--recursive \
--filter=-whitespace/line_length,-whitespace/braces,-whitespace/comments,-runtime/indentation_namespace,-whitespace/indent,-readability/braces,-whitespace/newline,-readability/todo,-build/c++11 \
--exclude=src/espconnect_webpage.h \
src
arduino:
name: Arduino
needs: cpplint
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
include:
- core: esp32:esp32
board: esp32:esp32:esp32
eeprom: true
softwareserial: false
index_url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

steps:
- uses: actions/setup-python@v1
- name: Checkout
uses: actions/checkout@v4

- name: Install arduino-cli
run: curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | BINDIR=/usr/local/bin sh

- name: Update core index
run: arduino-cli core update-index --additional-urls "${{ matrix.index_url }}"

- name: Install core
run: arduino-cli core install --additional-urls "${{ matrix.index_url }}" ${{ matrix.core }}

- name: Install ArduinoJson
run: arduino-cli lib install [email protected]

- name: Install AsyncTCP-esphome
run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/mathieucarbou/esphome-AsyncTCP#v2.1.1

- name: Install ESP Async WebServer
run: ARDUINO_LIBRARY_ENABLE_UNSAFE_INSTALL=true arduino-cli lib install --git-url https://github.com/mathieucarbou/ESPAsyncWebServer#v2.4.1

- name: Build BlockingCaptivePortal
run: arduino-cli compile --library . --warnings all -b ${{ matrix.board }} "examples/BlockingCaptivePortal/BlockingCaptivePortal.ino"

- name: Build NonBlockingCaptivePortal
run: arduino-cli compile --library . --warnings all -b ${{ matrix.board }} "examples/NonBlockingCaptivePortal/NonBlockingCaptivePortal.ino"

- name: Build AdvancedCaptivePortal
run: arduino-cli compile --library . --warnings all -b ${{ matrix.board }} "examples/AdvancedCaptivePortal/AdvancedCaptivePortal.ino"

platformio:
name: PlatformIO
needs: cpplint
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- platform: espressif32
board: esp32dev
eeprom: true
softwareserial: false

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up cache
uses: actions/cache@v4
with:
python-version: '3.x'

- uses: actions/checkout@v2
path: |
~/.platformio
~/.cache/pip
key: ${{ runner.os }}-platformio

- uses: actions/checkout@v2
- name: Set up Python 3.x
uses: actions/setup-python@v5
with:
repository: adafruit/ci-arduino
path: ci
python-version: '3.x'

- name: Install PlatformIO
run: pip install platformio

- name: Install platform "${{ matrix.platform }}"
run: platformio platform install ${{ matrix.platform }}

- name: Build BlockingCaptivePortal
run: platformio ci "examples/BlockingCaptivePortal/BlockingCaptivePortal.ino" -l '.' -b ${{ matrix.board }}

- name: pre-install
run: bash ci/actions_install.sh

- name: install-deps
run: bash .github/scripts/dep-install.sh
- name: Build NonBlockingCaptivePortal
run: platformio ci "examples/NonBlockingCaptivePortal/NonBlockingCaptivePortal.ino" -l '.' -b ${{ matrix.board }}

- name: test platforms
run: python3 ci/build_platform.py esp8266 esp32
- name: Build AdvancedCaptivePortal
run: platformio ci "examples/AdvancedCaptivePortal/AdvancedCaptivePortal.ino" -l '.' -b ${{ matrix.board }}
19 changes: 19 additions & 0 deletions .github/workflows/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: PlatformIO Dependabot

on:
workflow_dispatch:
schedule:
# Runs every day at 01:00
- cron: "0 1 * * *"

jobs:
dependabot:
runs-on: ubuntu-latest
name: PlatformIO Dependabot
steps:
- name: Checkout
uses: actions/checkout@v4
- name: run PlatformIO Dependabot
uses: peterus/platformio_dependabot@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
61 changes: 6 additions & 55 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,55 +1,6 @@
# Prerequisites
*.d

# Object files
*.o
*.ko
*.obj
*.elf

# Linker output
*.ilk
*.map
*.exp

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Debug files
*.dSYM/
*.su
*.idb
*.pdb

# Kernel Module Compile Results
*.mod*
*.cmd
.tmp_versions/
modules.order
Module.symvers
Mkfile.old
dkms.conf

.vscode
/build
.DS_Store
.lh
/.pio
/.vscode/*
!/.vscode/settings.json
/logs
21 changes: 21 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"files.associations": {
"*.cps": "javascript",
"*.config": "cpp",
"__bit_reference": "cpp",
"__hash_table": "cpp",
"__split_buffer": "cpp",
"__tree": "cpp",
"array": "cpp",
"deque": "cpp",
"initializer_list": "cpp",
"map": "cpp",
"set": "cpp",
"string": "cpp",
"string_view": "cpp",
"unordered_map": "cpp",
"unordered_set": "cpp",
"vector": "cpp",
"stdexcept": "cpp"
}
}
Loading

0 comments on commit ecc89c0

Please sign in to comment.