Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
7434 commits
Select commit Hold shift + click to select a range
70696f1
build: 17.4.0-SNAPSHOT
sogehige Apr 27, 2023
f280fd9
chore(locales): crowdin update (#5650)
github-actions[bot] Apr 27, 2023
aeb4649
feat(carousel): remove independent carousel overlay (#5656)
sogehige May 4, 2023
3bd0bf3
fix(locales): change event key from cmdredeems to custom
sogehige May 5, 2023
98bf9a7
fix(eventsub): hide reconnection websocket messages
sogehige May 7, 2023
aa87d8a
feat(clips): add tester endpoint
sogehige May 7, 2023
d5fe577
chore(locales): crowdin update (#5655)
github-actions[bot] May 11, 2023
a710752
build: 18.0.0
sogehige May 11, 2023
5a83723
build: 18.1.0-SNAPSHOT
sogehige May 11, 2023
875f299
fix(eventsub): release lock if event is already processed
sogehige May 12, 2023
498fe15
build: 18.0.1
sogehige May 12, 2023
3716899
build: 18.1.0-SNAPSHOT
sogehige May 12, 2023
8b273d2
fix(emotes): load global/user bttv emotes from v3 api
sogehige May 12, 2023
436419a
fix(emotes): generate uid for each emote
sogehige May 12, 2023
94e5e08
build: 18.0.2
sogehige May 12, 2023
dfb3322
build: 18.1.0-SNAPSHOT
sogehige May 12, 2023
32af3a8
fix(plugins): expose setTimeout, setImmediate functions
sogehige May 15, 2023
68ca4ae
build: 18.0.3
sogehige May 15, 2023
38c3821
build: 18.1.0-SNAPSHOT
sogehige May 15, 2023
3457d42
feat(overlay): remove independent text overlay
sogehige May 17, 2023
5805e5c
chore(locales): crowdin update (#5658)
github-actions[bot] May 17, 2023
8a7c79a
chore: update initial db (#5660)
sogehige May 17, 2023
0f562f4
feat(overlays): move goals inside overlays (#5657)
sogehige May 26, 2023
44e092f
feat(plugins): add triggerAlert to runScript
sogehige May 28, 2023
9000118
chore: update dependencies (#5662)
sogehige May 28, 2023
d8d3fb4
build: 19.0.0
sogehige May 28, 2023
66f6eed
build: 19.1.0-SNAPSHOT
sogehige May 28, 2023
b3fe3e2
fix(gallery): add Accept-Ranges for Chrome seeking
sogehige May 31, 2023
a229a2c
fix(goals): have recountIntervals more lenient when recounting
sogehige May 31, 2023
6da7c56
fix(helpers): add missing spaceBetweenGoalsInPx
sogehige Jun 5, 2023
b4df364
fix(goals): recount interval every 5 minutes
sogehige Jun 5, 2023
3b5dc62
fix(overlays): send current values for goals current types
sogehige Jun 5, 2023
2a64450
chore: remove console.log
sogehige Jun 5, 2023
e47aaeb
build: 19.0.1
sogehige Jun 5, 2023
fdc8720
build: 19.1.0-SNAPSHOT
sogehige Jun 5, 2023
ba480fd
fix(google): check refresh token before checking live broadcasts
sogehige Jun 20, 2023
ed99a38
chore: dependency update
sogehige Jun 20, 2023
3d26db4
chore: add debug informations
sogehige Jun 20, 2023
bcefe86
chore: add some debug
sogehige Jun 20, 2023
e982a39
feat: add !reconnect command
sogehige Jun 20, 2023
ad85a58
chore: update test
sogehige Jun 20, 2023
bc6419d
build: 19.1.0
sogehige Jun 20, 2023
63ad05e
build: 19.2.0-SNAPSHOT
sogehige Jun 20, 2023
e7d3c48
chore: remove api explorer
sogehige Jun 11, 2023
4f6df41
chore: fix build
sogehige Jun 20, 2023
0cb9b5b
build: 19.1.1
sogehige Jun 20, 2023
acef174
build: 19.2.0-SNAPSHOT
sogehige Jun 20, 2023
13cc6a4
fix(stats): return NotExisting user if userId is not found anymore on…
sogehige Jun 20, 2023
4b9be84
build: 19.1.2
sogehige Jun 20, 2023
6c2e09e
build: 19.2.0-SNAPSHOT
sogehige Jun 20, 2023
50071dd
feat: update panel stats api calls
sogehige Jun 22, 2023
70200d3
chore: dependency update
sogehige Jun 22, 2023
b72d284
chore(locales): crowdin update (#5663)
github-actions[bot] Jun 22, 2023
5b53a6b
chore: dependencies update (#5664)
sogehige Jun 22, 2023
0345677
chore: fix translate load
sogehige Jun 22, 2023
c350252
chore: remove console.log
sogehige Jun 22, 2023
68be898
chore: add credits entity
sogehige Jun 29, 2023
9ffe58a
chore: update overlay
sogehige Jun 30, 2023
c25f81f
chore: overlay entity updates
sogehige Jul 3, 2023
d1ba8c9
chore: update docs (#5665)
sogehige Jul 5, 2023
f1e4c16
docs: update prerequisites
sogehige Jul 5, 2023
171d73b
feat(parser): add $thumbnail into global variables
sogehige Jul 10, 2023
fb25f68
fix(checkFilter): update checkFilter behavior to include $
sogehige Jul 11, 2023
e40833e
build: 19.2.0
sogehige Jul 17, 2023
df6ab43
build: 19.3.0-SNAPSHOT
sogehige Jul 17, 2023
16aa115
chore: update entity
sogehige Jul 18, 2023
ffbde20
fix(credits): show only visible events
sogehige Jul 18, 2023
0f5eaf4
chore: credits updates
sogehige Jul 18, 2023
5901208
fix(calls): update getTopClips output
sogehige Jul 19, 2023
7979bae
chore: update dependencies
sogehige Jul 25, 2023
5e7094d
chore: dependency update
sogehige Jul 25, 2023
9a025f7
fix(chat): use reconnect instead of connect
sogehige Jul 25, 2023
c007dfb
chore: add ytsr patch
sogehige Jul 25, 2023
def0690
build: 19.2.1
sogehige Jul 25, 2023
1dc4c2a
build: 19.3.0-SNAPSHOT
sogehige Jul 25, 2023
b240e3c
chore(docker): update to lts image
sogehige Jul 27, 2023
bc2b32e
feat(chat): add hype chat support
sogehige Aug 2, 2023
17bef5f
feat: add Content Classification Labels
sogehige Aug 4, 2023
b216ade
build: 19.3.0
sogehige Aug 4, 2023
74114cd
build: 19.4.0-SNAPSHOT
sogehige Aug 4, 2023
38120a6
fix(panel): fix labels are not saved in titles
sogehige Aug 4, 2023
516a6a2
build: 19.3.1
sogehige Aug 4, 2023
47f7b7d
build: 19.4.0-SNAPSHOT
sogehige Aug 4, 2023
a60bb81
tests: fix custom variable test missing runEvery attribute
sogehige Aug 4, 2023
6b07809
feat(debug): add exec commands to clear up bot/caster credentials
sogehige Aug 9, 2023
025568c
build: 19.4.0
sogehige Aug 9, 2023
2859416
build: 19.5.0-SNAPSHOT
sogehige Aug 9, 2023
cf246d5
chore: update plugin entity
sogehige Aug 11, 2023
556bfb2
feat(plugins): rework plugin system (#5667)
sogehige Aug 25, 2023
6ad3771
feat(plugins): add missing fetch function
sogehige Aug 25, 2023
372bd52
chore(locales): crowdin update (#5666)
github-actions[bot] Aug 25, 2023
de7d4d4
feat(plugins): add stream variable to sandbox
sogehige Aug 25, 2023
8fafc55
fix(package): add typsecript to prod dependencies
sogehige Aug 28, 2023
4769cb5
fix(plugins): add missing sandbox imports
sogehige Aug 28, 2023
9011b19
chore: revert panel credentials
sogehige Aug 28, 2023
ec8e610
chore: fix listento types
sogehige Aug 28, 2023
7c6cbda
fix(updateChannelInfo): update channel information last
sogehige Aug 28, 2023
47710a9
fix(plugins): fix not sending message without userstate
sogehige Aug 28, 2023
72fd0a2
fix(plugins): fix incorrect varaible used for onCategoryChange
sogehige Aug 28, 2023
e366665
fix(timeout): fix inconsistent timeout log
sogehige Aug 29, 2023
812ad95
feat(plugins): add tts function
sogehige Aug 30, 2023
edf3502
feat(parser): add parsing of highlighted messages
sogehige Aug 30, 2023
4841c1d
fix(tts): cache only unique voices
sogehige Aug 30, 2023
f48973e
fix(tts): highlight message can trigger !tts overlay
sogehige Aug 30, 2023
809dd90
feat(plugins): add custom variable on change listener
sogehige Sep 6, 2023
96834eb
chore: dependency update
sogehige Sep 12, 2023
4db2657
chore: remove social widget
sogehige Sep 23, 2023
92b3ca8
fix(tiltify): don't request campaigns and donations if disabled
sogehige Sep 24, 2023
276661e
fix(inspector): fix profiler not starting correctly
sogehige Sep 27, 2023
1202dae
fix(getChannelChatters): fix emitting displayname instead of username
sogehige Sep 27, 2023
075301e
fix(plugins): add setImmediate to unblock eventloop
sogehige Sep 27, 2023
14f80f6
feat(debug): add exec command heap, profiler.5/15/30/60
sogehige Sep 27, 2023
749dd4d
fix(updater): remove deprecated updater
sogehige Sep 27, 2023
f217f28
chore: remove remnants of updater
sogehige Sep 28, 2023
238abb2
chore: revert git-semver-tags
sogehige Sep 28, 2023
d84afe0
build: 20.0.0
sogehige Sep 28, 2023
72c3e08
build: 20.1.0-SNAPSHOT
sogehige Sep 28, 2023
1c0c460
build: 20.0.1
sogehige Sep 29, 2023
63ab561
build: 20.1.0-SNAPSHOT
sogehige Sep 29, 2023
0286fea
fix(plugins): cache transpiled files
sogehige Sep 29, 2023
4d391a2
build: 20.0.2
sogehige Sep 29, 2023
ee19fa9
build: 20.1.0-SNAPSHOT
sogehige Sep 29, 2023
d69e7ba
chore: update overlay for alerts
sogehige Oct 2, 2023
66a6c74
chore: add alert overlay global properties
sogehige Oct 2, 2023
d6c115c
chore: update entity
sogehige Oct 3, 2023
3e3aaaa
chore: add alert text
sogehige Oct 4, 2023
a17e2b9
chore: add animations
sogehige Oct 4, 2023
59f5621
chore: add animations
sogehige Oct 4, 2023
0054435
chore: add variants
sogehige Oct 5, 2023
46e38ba
chore: add volume to image
sogehige Oct 5, 2023
3a5e2f8
chore: add audio
sogehige Oct 5, 2023
caaf4d6
chore: add animations overwrites
sogehige Oct 6, 2023
572de13
chore: add alertDuration
sogehige Oct 6, 2023
8a4db12
chore: update alerttext entity
sogehige Oct 7, 2023
645eb0a
chore: add globalFont
sogehige Oct 7, 2023
02f6683
chore: export alert animation opts
sogehige Oct 7, 2023
a59a438
chore: add tts component
sogehige Oct 8, 2023
3a5ecbb
chore: add custom alert
sogehige Oct 8, 2023
7115d22
chore: variants update
sogehige Oct 11, 2023
33dba56
chore: add variant filters
sogehige Oct 11, 2023
3cc262e
chore: enabledWhen Filter type
sogehige Oct 12, 2023
a2dcc87
feat(channel): add channelDisplayName/channelUserName global variables
sogehige Oct 15, 2023
2070aa7
build: 20.1.0
sogehige Oct 15, 2023
3539d3f
build: 20.2.0-SNAPSHOT
sogehige Oct 15, 2023
6d9ce55
chore(locales): crowdin update (#5668)
github-actions[bot] Oct 15, 2023
d2abebe
chore: update entity overlay
sogehige Oct 16, 2023
3dbabb0
chore: add enabled to alert
sogehige Oct 16, 2023
9af044d
chore: add overlay tts speakDelay
sogehige Oct 17, 2023
fd03667
chore: update entity
sogehige Oct 19, 2023
b715cfd
chore: ad variantName
sogehige Oct 19, 2023
d45f3fc
fix: support nanoid triggerAlert
sogehige Oct 19, 2023
abce11a
fix: change shortid to nanoid
sogehige Oct 19, 2023
6cb013e
chore: use nanoid 3 for commonjs
sogehige Oct 19, 2023
2dda7fe
chore: add animation boundaries attr
sogehige Oct 19, 2023
253b32d
fix(filters): run both regex
sogehige Oct 19, 2023
74d0f70
chore: add more custom options
sogehige Oct 20, 2023
c094513
build: 20.1.1
sogehige Oct 20, 2023
f9688bc
build: 20.2.0-SNAPSHOT
sogehige Oct 20, 2023
e9c0d03
refactor: move to ESM
sogehige Oct 25, 2023
6ef28de
refactor: fix sandbox transpile
sogehige Oct 25, 2023
21ed009
chore: import optional sinon fix
sogehige Oct 26, 2023
74c7516
chore: dependency update
sogehige Oct 26, 2023
3076220
chore: fix patches
sogehige Oct 26, 2023
2b8c43e
chore: disable loglevel silent
sogehige Oct 26, 2023
e70587d
chore: force dependencies install
sogehige Oct 26, 2023
e2b0d32
chore: revert CustomAuthProvider
sogehige Oct 26, 2023
ef61a29
chore: expose user access tokens in twurple auth
sogehige Oct 26, 2023
e661737
chore: fix updateChannelInfo
sogehige Oct 26, 2023
55fbe25
fix(twitch): properly format duration of timeouts
sogehige Oct 27, 2023
c5225f9
fix(stats): return correctly parsed spotify song
sogehige Oct 27, 2023
df7aaec
fix(stacktrace): remove stacktrace usage from log and triggers
sogehige Oct 27, 2023
dd7e731
chore(chat): revert missing code
sogehige Oct 27, 2023
0f2324a
fix(changelog): fix issues with ESM
sogehige Oct 28, 2023
cf14d33
chore: fix typo
sogehige Oct 28, 2023
88b2b94
fix(backup): update backup after ESM
sogehige Oct 28, 2023
391586d
chore: fix changelog ;
sogehige Oct 28, 2023
1b27039
fix(changePackageVersion): fix after ESM update
sogehige Oct 28, 2023
6862112
build: 20.1.2
sogehige Oct 28, 2023
cdfe78f
build: 20.2.0-SNAPSHOT
sogehige Oct 28, 2023
11896bf
chore(locales): crowdin update (#5670)
github-actions[bot] Oct 28, 2023
9990ed5
fix(changelog): fix cli generate
sogehige Oct 28, 2023
d0d6809
build: 20.1.3
sogehige Oct 28, 2023
a4c1aef
build: 20.2.0-SNAPSHOT
sogehige Oct 28, 2023
0524aa2
fix(eventSubWebsocket): add missing scopes
sogehige Oct 28, 2023
42b9007
debug(parser): add status debug
sogehige Oct 28, 2023
1a72bcc
chore: use node LTS
sogehige Oct 28, 2023
34df639
fix: downgrade better-sqlite3 to 8.0.0 until typeorm is updated
sogehige Oct 28, 2023
9819e21
build: 20.1.4
sogehige Oct 28, 2023
20e55af
build: 20.2.0-SNAPSHOT
sogehige Oct 28, 2023
162ce3e
chore: move custompatch into prod deps
sogehige Oct 28, 2023
f59ae1b
chore: add cooldown check error message
sogehige Oct 28, 2023
0b4f94b
fix(cooldown): change debug cooldown message to info message
sogehige Oct 28, 2023
d030758
build: 20.1.5
sogehige Oct 28, 2023
81b6a41
build: 20.2.0-SNAPSHOT
sogehige Oct 28, 2023
5651cc3
chore: add more debug to cooldown
sogehige Oct 29, 2023
1e9f35a
fix: migration zero should be properly skipped if migrations are alre…
sogehige Oct 29, 2023
db8d2d5
build: 20.1.6
sogehige Oct 29, 2023
6620ea8
build: 20.2.0-SNAPSHOT
sogehige Oct 29, 2023
e6a28d4
chore: dockerfile to lts-alpine
sogehige Oct 29, 2023
b23b9f2
fix(tools): fix backup not using correct connection
sogehige Oct 29, 2023
85da66f
chore: remove backup type
sogehige Oct 29, 2023
8cba85f
chore: remove install of older npm
sogehige Oct 29, 2023
47f15ba
chore: downgrade npm to 8 as it hangs in github action
sogehige Oct 29, 2023
8fcd14f
chore: change comment
sogehige Oct 29, 2023
eca9219
chore: update dockerfile
sogehige Oct 29, 2023
3bdfa54
chore: add profile image entity
sogehige Oct 30, 2023
d5c8bd6
fix: fix incorrectly loading dotenv
sogehige Oct 30, 2023
65cd6e4
build: 20.1.7
sogehige Oct 30, 2023
72f3a76
build: 20.2.0-SNAPSHOT
sogehige Oct 30, 2023
ac249f5
chore: remove docker ls
sogehige Oct 30, 2023
043d53b
fix(google): patch auth library to return correct data
sogehige Oct 30, 2023
853b906
build: 20.1.8
sogehige Oct 30, 2023
8fe6f5f
build: 20.2.0-SNAPSHOT
sogehige Oct 30, 2023
8e4ebce
fix(locales): change new version locale
sogehige Oct 31, 2023
39448f3
chore(locales): crowdin update (#5673)
github-actions[bot] Oct 31, 2023
5aab26d
fix(calls): update some error messages
sogehige Oct 31, 2023
6d9d47c
chore(locales): crowdin update (#5674)
github-actions[bot] Oct 31, 2023
6be7182
feat(events): add all usable EventSub events
sogehige Oct 31, 2023
9017a7b
fix(twitch): clean missing scope on success
sogehige Oct 31, 2023
56c30ab
feat(media): removed !media command in favor of new alert system (#5672)
sogehige Oct 31, 2023
894561f
build: 21.0.0
sogehige Oct 31, 2023
dbff2ed
build: 21.1.0-SNAPSHOT
sogehige Oct 31, 2023
e075e4f
chore: cleanup unused files
sogehige Oct 31, 2023
af41072
chore: remove unused files
sogehige Oct 31, 2023
60ef7a2
feat(overlays): add support for user-defined user name colors
sogehige Nov 1, 2023
50a26e9
build: 21.1.0
sogehige Nov 1, 2023
685755a
build: 21.2.0-SNAPSHOT
sogehige Nov 1, 2023
f595fae
chore: update npm
sogehige Nov 1, 2023
c9b2de9
build: 21.1.1
sogehige Nov 1, 2023
f508a18
build: 21.2.0-SNAPSHOT
sogehige Nov 1, 2023
3fcf1c0
chore: update docker building
sogehige Nov 1, 2023
4b2c735
chore: fix Dockerfile unzip
sogehige Nov 1, 2023
7005329
build: 21.1.2
sogehige Nov 1, 2023
163703b
build: 21.2.0-SNAPSHOT
sogehige Nov 1, 2023
4607b9f
fix(tools): update changelog
sogehige Nov 1, 2023
19400b2
chore(tools): update changelog styling
sogehige Nov 1, 2023
6e66f96
fix(discord): if DMs are disabled for user, send proper message
sogehige Nov 3, 2023
87f4bc7
feat(chat): add support for more settings
sogehige Nov 9, 2023
2d9b384
fix(overlaysDefaultValues): remove picking of values as null values b…
sogehige Nov 9, 2023
b813feb
fix(panel): correctly get dirname on ESM
sogehige Nov 18, 2023
90c85fe
build: 21.1.3
sogehige Nov 18, 2023
b9eed1e
build: 21.2.0-SNAPSHOT
sogehige Nov 18, 2023
58d2924
feat(chat): remove deprecated hype chat support
sogehige Nov 18, 2023
27f0597
chore: delete unused imports
sogehige Nov 18, 2023
3472eb1
fix(gallery): fix dirname for esm
sogehige Nov 22, 2023
6d32ff0
build: 21.1.4
sogehige Nov 22, 2023
0926020
build: 21.2.0-SNAPSHOT
sogehige Nov 22, 2023
67cde85
removed submodule
sogehige Nov 22, 2023
eb8e910
chore: updates for submodule deletion
sogehige Nov 22, 2023
9247870
update
sogehige Nov 23, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
82 changes: 82 additions & 0 deletions .github/workflows/dockerimage-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: Docker|backend - PR

concurrency:
group: pr-${{ github.head_ref || github.ref }}
cancel-in-progress: true

on:
pull_request

jobs:
artifact:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0 # load full history
- name: Get short SHA
id: slug
run: echo "SHA=$(echo ${GITHUB_SHA} | cut -c1-8)" >> $GITHUB_OUTPUT
- name: install node LTS
uses: actions/setup-node@v3
with:
node-version: lts/*
check-latest: true

- name: Build a bot
env:
OPENEXCHANGE_APPID: ${{ secrets.OPENEXCHANGE_APPID }}
run: make

- name: Add commit file
run: echo "$(echo ${GITHUB_SHA} | cut -c1-8)" >> ./.commit

- name: Zip a bot
run: make pack

- uses: actions/upload-artifact@v3
with:
name: sogeBot-${{ steps.slug.outputs.SHA }}
path: ${{ github.workspace }}/*.zip

build:
needs: artifact
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Get short SHA
id: slug
run: echo "SHA=$(echo ${GITHUB_SHA} | cut -c1-8)" >> $GITHUB_OUTPUT
-
name: Set up QEMU
uses: docker/setup-qemu-action@v2.1.0
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2.2.1
-
name: Login to DockerHub
uses: docker/login-action@v2.1.0
with:
username: ${{ secrets.DOCKER_REGISTRY_USERNAME }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}

- uses: actions/download-artifact@master
with:
name: sogeBot-${{ steps.slug.outputs.SHA }}
path: ${{ github.workspace }}/*.zip

-
name: Build and push
uses: docker/build-push-action@v3
with:
context: .
platforms: linux/amd64
push: true
tags: |
sogebot/pr:${{github.head_ref}}
cache-from: type=gha
cache-to: type=gha,mode=max
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: sogeBot Dashboard UI
name: Docker|frontend - master

concurrency:
group: sogebot-dashboard-${{ github.head_ref || github.ref }}
Expand Down
56 changes: 56 additions & 0 deletions .github/workflows/tests-generic.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Tests|Backend

concurrency:
group: generic-${{ github.head_ref || github.ref }}
cancel-in-progress: true

on:
push:
branches:
- 'master'
pull_request:

jobs:
eslint:
name: ESLint check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: All test should be run - tests are not containing describe.only
run: |
if ! grep -r -l 'describe.only' ./test/; then
exit 0
else
exit 1
fi;
- name: install node LTS
uses: actions/setup-node@v3
with:
node-version: lts/*
check-latest: true
- name: Install eslint and dependencies
run: |
make dependencies
- name: Run eslint
run: ENV=development make eslint
- name: Run jsonlint
run: ENV=development make jsonlint
fullbuild:
name: Make test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
with:
ref: ${{ github.event.pull_request.head.sha }}
- id: log
name: Load commit message for skip test check
run: echo "MESSAGE=$(git log --no-merges -1 --pretty=format:%s%b)" >> $GITHUB_OUTPUT
- name: install node LTS
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
uses: actions/setup-node@v3
with:
node-version: lts/*
check-latest: true
- name: Install all dependencies and build everything
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: ENV=development make
175 changes: 175 additions & 0 deletions .github/workflows/tests-mysql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
name: Tests|Backend

concurrency:
group: mysql-${{ github.head_ref || github.ref }}
cancel-in-progress: true

on:
push:
branches:
- 'master'
pull_request:

jobs:
migration:
name: MySQL/MariaDB tests - migration
runs-on: ubuntu-latest
steps:
- name: Shutdown Ubuntu MySQL (SUDO)
run: sudo service mysql stop # Shutdown the Default MySQL, "sudo" is necessary, please not remove it
- uses: mirromutth/mysql-action@v1.1
with:
host port: 3306 # Optional, default value is 3306. The port of host
container port: 3306 # Optional, default value is 3306. The port of container
character set server: 'utf8mb4' # Optional, default value is 'utf8mb4'. The '--character-set-server' option for mysqld
collation server: 'utf8mb4_general_ci' # Optional, default value is 'utf8mb4_general_ci'. The '--collation-server' option for mysqld
mysql version: '5.7' # Optional, default value is "latest". The version of the MySQL
mysql database: 'sogebot' # Optional, default value is "test". The specified database which will be create
mysql root password: 'Passw0rd' # Required if "mysql user" is empty, default is empty. The root superuser password
- uses: actions/checkout@master
with:
ref: ${{ github.event.pull_request.head.sha }}
- id: log
name: Load commit message for skip test check
run: echo "MESSAGE=$(git log --no-merges -1 --pretty=format:%s%b)" >> $GITHUB_OUTPUT
- name: install node LTS
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
uses: actions/setup-node@v3
with:
node-version: lts/*
check-latest: true
- name: Install all dependencies and build just a bot
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: ENV=development make info clean dependencies bot
- name: Set proper db to use
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: npm run test:config:mysql
- name: Run migration test
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: npm run test:migration
postgres:
name: MySQL/MariaDB tests - part 1
runs-on: ubuntu-latest
steps:
- name: Shutdown Ubuntu MySQL (SUDO)
run: sudo service mysql stop # Shutdown the Default MySQL, "sudo" is necessary, please not remove it
- uses: mirromutth/mysql-action@v1.1
with:
host port: 3306 # Optional, default value is 3306. The port of host
container port: 3306 # Optional, default value is 3306. The port of container
character set server: 'utf8mb4' # Optional, default value is 'utf8mb4'. The '--character-set-server' option for mysqld
collation server: 'utf8mb4_general_ci' # Optional, default value is 'utf8mb4_general_ci'. The '--collation-server' option for mysqld
mysql version: '5.7' # Optional, default value is "latest". The version of the MySQL
mysql database: 'sogebot' # Optional, default value is "test". The specified database which will be create
mysql root password: 'Passw0rd' # Required if "mysql user" is empty, default is empty. The root superuser password
- uses: actions/checkout@master
with:
ref: ${{ github.event.pull_request.head.sha }}
- id: log
name: Load commit message for skip test check
run: echo "MESSAGE=$(git log --no-merges -1 --pretty=format:%s%b)" >> $GITHUB_OUTPUT
- name: install node LTS
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
uses: actions/setup-node@v3
with:
node-version: lts/*
check-latest: true
- name: Install all dependencies and build just a bot
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: ENV=development make info clean dependencies bot
- name: Set proper db to use
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: npm run test:config:mysql
- name: Run mocha
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: TESTS=@func1 npm test
- uses: codecov/codecov-action@v3
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
with:
token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
name: codecov-postgres # optional
flags: postgres
postgres2:
name: MySQL/MariaDB tests - part 2
runs-on: ubuntu-latest
steps:
- name: Shutdown Ubuntu MySQL (SUDO)
run: sudo service mysql stop # Shutdown the Default MySQL, "sudo" is necessary, please not remove it
- uses: mirromutth/mysql-action@v1.1
with:
host port: 3306 # Optional, default value is 3306. The port of host
container port: 3306 # Optional, default value is 3306. The port of container
character set server: 'utf8mb4' # Optional, default value is 'utf8mb4'. The '--character-set-server' option for mysqld
collation server: 'utf8mb4_general_ci' # Optional, default value is 'utf8mb4_general_ci'. The '--collation-server' option for mysqld
mysql version: '5.7' # Optional, default value is "latest". The version of the MySQL
mysql database: 'sogebot' # Optional, default value is "test". The specified database which will be create
mysql root password: 'Passw0rd' # Required if "mysql user" is empty, default is empty. The root superuser password
- uses: actions/checkout@master
with:
ref: ${{ github.event.pull_request.head.sha }}
- id: log
name: Load commit message for skip test check
run: echo "MESSAGE=$(git log --no-merges -1 --pretty=format:%s%b)" >> $GITHUB_OUTPUT
- name: install node LTS
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
uses: actions/setup-node@v3
with:
node-version: lts/*
check-latest: true
- name: Install all dependencies and build just a bot
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: ENV=development make info clean dependencies bot
- name: Set proper db to use
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: npm run test:config:mysql
- name: Run mocha
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: TESTS=@func2 npm test
- uses: codecov/codecov-action@v3
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
with:
token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
name: codecov-postgres # optional
flags: postgres
postgres3:
name: MySQL/MariaDB tests - part 3
runs-on: ubuntu-latest
steps:
- name: Shutdown Ubuntu MySQL (SUDO)
run: sudo service mysql stop # Shutdown the Default MySQL, "sudo" is necessary, please not remove it
- uses: mirromutth/mysql-action@v1.1
with:
host port: 3306 # Optional, default value is 3306. The port of host
container port: 3306 # Optional, default value is 3306. The port of container
character set server: 'utf8mb4' # Optional, default value is 'utf8mb4'. The '--character-set-server' option for mysqld
collation server: 'utf8mb4_general_ci' # Optional, default value is 'utf8mb4_general_ci'. The '--collation-server' option for mysqld
mysql version: '5.7' # Optional, default value is "latest". The version of the MySQL
mysql database: 'sogebot' # Optional, default value is "test". The specified database which will be create
mysql root password: 'Passw0rd' # Required if "mysql user" is empty, default is empty. The root superuser password
- uses: actions/checkout@master
with:
ref: ${{ github.event.pull_request.head.sha }}
- id: log
name: Load commit message for skip test check
run: echo "MESSAGE=$(git log --no-merges -1 --pretty=format:%s%b)" >> $GITHUB_OUTPUT
- name: install node LTS
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
uses: actions/setup-node@v3
with:
node-version: lts/*
check-latest: true
- name: Install all dependencies and build just a bot
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: ENV=development make info clean dependencies bot
- name: Set proper db to use
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: npm run test:config:mysql
- name: Run mocha
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
run: TESTS=@func3 npm test
- uses: codecov/codecov-action@v3
if: "!contains(steps.log.outputs.MESSAGE, '[skip-tests]')"
with:
token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
name: codecov-mysql # optional
flags: mysql
Loading