mirror of
https://github.com/henrywhitaker3/Speedtest-Tracker.git
synced 2025-12-21 21:33:08 +01:00
Compare commits
23 Commits
feat/sort-
...
v1.12.2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3955a2dad0 | ||
|
|
6905a5aac0 | ||
|
|
b3ba6a8b06 | ||
|
|
1e1a2c9b69 | ||
|
|
1c00beed86 | ||
|
|
603f618720 | ||
|
|
fa41bdd40d | ||
|
|
9d2f1858a0 | ||
|
|
6c6a12bb5f | ||
|
|
5885824c54 | ||
|
|
ea78415157 | ||
|
|
efecd28afb | ||
|
|
8d32d06768 | ||
|
|
8cb2e8a323 | ||
|
|
58e82dc9a8 | ||
|
|
0dff534dfd | ||
|
|
fba69514b2 | ||
|
|
1fcaa795cd | ||
|
|
858dcc1f7b | ||
|
|
283de67e17 | ||
|
|
370c73e1a5 | ||
|
|
f6bb77ce71 | ||
|
|
2ed811e949 |
79
.github/dependabot.yml
vendored
Normal file
79
.github/dependabot.yml
vendored
Normal file
@@ -0,0 +1,79 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: composer
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 10
|
||||
target-branch: dev
|
||||
ignore:
|
||||
- dependency-name: laravel/framework
|
||||
versions:
|
||||
- 7.30.3
|
||||
- 8.36.2
|
||||
- 8.37.0
|
||||
- 8.38.0
|
||||
- dependency-name: doctrine/dbal
|
||||
versions:
|
||||
- 2.13.0
|
||||
- 3.0.0
|
||||
- dependency-name: phpunit/phpunit
|
||||
versions:
|
||||
- 9.5.1
|
||||
- 9.5.3
|
||||
- dependency-name: facade/ignition
|
||||
versions:
|
||||
- 2.5.10
|
||||
- 2.5.11
|
||||
- 2.5.12
|
||||
- 2.5.13
|
||||
- 2.5.9
|
||||
- dependency-name: laravel/tinker
|
||||
versions:
|
||||
- 2.6.0
|
||||
- dependency-name: nunomaduro/collision
|
||||
versions:
|
||||
- 5.3.0
|
||||
- dependency-name: nunomaduro/larastan
|
||||
versions:
|
||||
- 0.6.13
|
||||
- package-ecosystem: npm
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 10
|
||||
target-branch: dev
|
||||
ignore:
|
||||
- dependency-name: chart.js
|
||||
versions:
|
||||
- 3.1.0
|
||||
- 3.1.1
|
||||
- dependency-name: laravel-mix
|
||||
versions:
|
||||
- 6.0.16
|
||||
- dependency-name: y18n
|
||||
versions:
|
||||
- 4.0.1
|
||||
- 4.0.2
|
||||
- dependency-name: react-dom
|
||||
versions:
|
||||
- 17.0.2
|
||||
- dependency-name: react
|
||||
versions:
|
||||
- 17.0.2
|
||||
- dependency-name: react-bootstrap
|
||||
versions:
|
||||
- 1.4.3
|
||||
- 1.5.0
|
||||
- dependency-name: sass
|
||||
versions:
|
||||
- 1.32.5
|
||||
- 1.32.6
|
||||
- 1.32.7
|
||||
- dependency-name: "@babel/plugin-proposal-class-properties"
|
||||
versions:
|
||||
- 7.12.13
|
||||
- dependency-name: react-toastify
|
||||
versions:
|
||||
- 7.0.1
|
||||
- 7.0.2
|
||||
72
.github/workflows/laravel-dev.yml
vendored
72
.github/workflows/laravel-dev.yml
vendored
@@ -1,59 +1,29 @@
|
||||
name: Dev
|
||||
name: Build Dev Image
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ dev ]
|
||||
|
||||
jobs:
|
||||
laravel-tests:
|
||||
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: shivammathur/setup-php@b7d1d9c9a92d8d8463ce36d7f60da34d461724f8
|
||||
with:
|
||||
php-version: '7.4'
|
||||
- uses: actions/checkout@v2
|
||||
- name: Copy .env
|
||||
run: php -r "file_exists('.env') || copy('.env.example', '.env');"
|
||||
- name: Update .env with secrets
|
||||
env:
|
||||
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
|
||||
TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }}
|
||||
TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
|
||||
HEALTHCHECKS_UUID: ${{ secrets.HEALTHCHECKS_UUID }}
|
||||
run: |
|
||||
echo SLACK_WEBHOOK=$SLACK_WEBHOOK >> .env
|
||||
echo TELEGRAM_BOT_TOKEN=$TELEGRAM_BOT_TOKEN >> .env
|
||||
echo TELEGRAM_CHAT_ID=$TELEGRAM_CHAT_ID >> .env
|
||||
echo HEALTHCHECKS_UUID=$HEALTHCHECKS_UUID >> .env
|
||||
- name: Install Dependencies
|
||||
run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
|
||||
- name: Create Database
|
||||
run: |
|
||||
mkdir -p database
|
||||
touch database/database.sqlite
|
||||
- name: Generate key
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: php artisan key:generate
|
||||
- name: Generate JWT key
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: php artisan jwt:secret
|
||||
- name: Directory Permissions
|
||||
run: chmod -R 777 storage bootstrap/cache
|
||||
- name: Download Speedtest binary
|
||||
run: wget https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-x86_64-linux.tgz -O speedtest.tgz && tar zxvf speedtest.tgz && mv speedtest app/Bin/
|
||||
- name: Accept EULA
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: php artisan speedtest:eula
|
||||
- name: Execute tests (Unit and Feature tests) via PHPUnit
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: vendor/bin/phpunit
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Docker Setup Buildx
|
||||
uses: docker/setup-buildx-action@v1.2.0
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
file: ./docker/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
push: true
|
||||
tags: henrywhitaker3/speedtest-tracker:dev,henrywhitaker3/speedtest-tracker:dev-arm
|
||||
|
||||
29
.github/workflows/laravel-master.yml
vendored
Normal file
29
.github/workflows/laravel-master.yml
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
name: Build Latest Image
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Docker Setup Buildx
|
||||
uses: docker/setup-buildx-action@v1.2.0
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
file: ./docker/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
push: true
|
||||
tags: henrywhitaker3/speedtest-tracker:latest,henrywhitaker3/speedtest-tracker:latest-arm
|
||||
59
.github/workflows/laravel-stable.yml
vendored
59
.github/workflows/laravel-stable.yml
vendored
@@ -1,59 +0,0 @@
|
||||
name: Stable
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
|
||||
jobs:
|
||||
laravel-tests:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: shivammathur/setup-php@b7d1d9c9a92d8d8463ce36d7f60da34d461724f8
|
||||
with:
|
||||
php-version: '7.4'
|
||||
- uses: actions/checkout@v2
|
||||
- name: Copy .env
|
||||
run: php -r "file_exists('.env') || copy('.env.example', '.env');"
|
||||
- name: Update .env with secrets
|
||||
env:
|
||||
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
|
||||
TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }}
|
||||
TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
|
||||
HEALTHCHECKS_UUID: ${{ secrets.HEALTHCHECKS_UUID }}
|
||||
run: |
|
||||
echo SLACK_WEBHOOK=$SLACK_WEBHOOK >> .env
|
||||
echo TELEGRAM_BOT_TOKEN=$TELEGRAM_BOT_TOKEN >> .env
|
||||
echo TELEGRAM_CHAT_ID=$TELEGRAM_CHAT_ID >> .env
|
||||
echo HEALTHCHECKS_UUID=$HEALTHCHECKS_UUID >> .env
|
||||
- name: Install Dependencies
|
||||
run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
|
||||
- name: Create Database
|
||||
run: |
|
||||
mkdir -p database
|
||||
touch database/database.sqlite
|
||||
- name: Generate key
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: php artisan key:generate
|
||||
- name: Generate JWT key
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: php artisan jwt:secret
|
||||
- name: Directory Permissions
|
||||
run: chmod -R 777 storage bootstrap/cache
|
||||
- name: Download Speedtest binary
|
||||
run: wget https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-x86_64-linux.tgz -O speedtest.tgz && tar zxvf speedtest.tgz && mv speedtest app/Bin/
|
||||
- name: Accept EULA
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: php artisan speedtest:eula
|
||||
- name: Execute tests (Unit and Feature tests) via PHPUnit
|
||||
env:
|
||||
DB_CONNECTION: sqlite
|
||||
DB_DATABASE: database/database.sqlite
|
||||
run: vendor/bin/phpunit
|
||||
@@ -1,6 +1,6 @@
|
||||
# Speedtest Tracker
|
||||
|
||||
[](https://hub.docker.com/r/henrywhitaker3/speedtest-tracker) [](https://github.com/henrywhitaker3/Speedtest-Tracker/actions) [](https://github.com/henrywhitaker3/Speedtest-Tracker/actions) [](https://github.com/henrywhitaker3/Speedtest-Tracker/commits) [](https://github.com/henrywhitaker3/Speedtest-Tracker/issues) [](https://github.com/henrywhitaker3/Speedtest-Tracker/commits)  [](https://github.com/henrywhitaker3/Speedtest-Tracker/blob/master/LICENSE)
|
||||
[](https://hub.docker.com/r/henrywhitaker3/speedtest-tracker) [](https://github.com/henrywhitaker3/Speedtest-Tracker/actions) [](https://github.com/henrywhitaker3/Speedtest-Tracker/actions) [](https://github.com/henrywhitaker3/Speedtest-Tracker/commits) [](https://github.com/henrywhitaker3/Speedtest-Tracker/issues) [](https://github.com/henrywhitaker3/Speedtest-Tracker/commits)  [](https://github.com/henrywhitaker3/Speedtest-Tracker/blob/master/LICENSE)
|
||||
|
||||
This program runs a speedtest check every hour and graphs the results. The back-end is written in [Laravel](https://laravel.com/) and the front-end uses [React](https://reactjs.org/). It uses the [Ookla's speedtest cli](https://www.speedtest.net/apps/cli) package to get the data and uses [Chart.js](https://www.chartjs.org/) to plot the results.
|
||||
|
||||
|
||||
@@ -27,8 +27,8 @@ class HomepageDataController extends Controller
|
||||
|
||||
return [
|
||||
'latest' => run(GetLatestSpeedtestData::class),
|
||||
'time' => run(GetSpeedtestTimeData::class),
|
||||
'fail' => run(GetFailedSpeedtestData::class),
|
||||
'time' => run(GetSpeedtestTimeData::class, $days),
|
||||
'fail' => run(GetFailedSpeedtestData::class, $days),
|
||||
'config' => SettingsHelper::getConfig(),
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,4 +1,10 @@
|
||||
{
|
||||
"1.12.2": [
|
||||
{
|
||||
"description": "Fixed a bug where the latest X days widget would not update for the failure graph",
|
||||
"link": ""
|
||||
}
|
||||
],
|
||||
"1.12.1": [
|
||||
{
|
||||
"description": "Fixed a bug where the latest X days widget would not update (#680)",
|
||||
|
||||
@@ -62,7 +62,7 @@ return [
|
||||
'providers' => [
|
||||
'users' => [
|
||||
'driver' => 'eloquent',
|
||||
'model' => App\User::class,
|
||||
'model' => App\Models\User::class,
|
||||
],
|
||||
|
||||
// 'users' => [
|
||||
|
||||
@@ -7,7 +7,7 @@ return [
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
'version' => '1.12.1',
|
||||
'version' => '1.12.2',
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
||||
@@ -3,7 +3,8 @@ LABEL maintainer=henrywhitaker3@outlook.com
|
||||
|
||||
ENV arch='arm'
|
||||
|
||||
COPY conf/ /
|
||||
COPY docker/conf/ /
|
||||
COPY . /site
|
||||
|
||||
EXPOSE 80 443
|
||||
|
||||
|
||||
@@ -22,14 +22,21 @@ else
|
||||
if [ ! -f /config/www/app/Bin/speedtest ]; then
|
||||
echo "Ookla GDPR and EULA accepted. Downloading Speedtest CLI."
|
||||
cd /tmp
|
||||
wget https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-$arch-linux.tgz -O speedtest.tgz > /dev/null
|
||||
|
||||
if [ $(uname -m) == "x86_64" ]; then
|
||||
wget https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-x86_64-linux.tgz -O speedtest.tgz > /dev/null
|
||||
else
|
||||
wget https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-arm-linux.tgz -O speedtest.tgz > /dev/null
|
||||
fi
|
||||
|
||||
tar zxvf speedtest.tgz > /dev/null
|
||||
cp speedtest /site/app/Bin/
|
||||
|
||||
HOME=/config && s6-setuidgid abc /site/artisan speedtest:eula > /dev/null
|
||||
chmod +x /site/artisan
|
||||
HOME=/config && s6-setuidgid abc /site/app/Bin/speedtest --accept-license --accept-gdpr > /dev/null
|
||||
HOME=/root
|
||||
else
|
||||
HOME=/config && s6-setuidgid abc /config/www/artisan speedtest:eula > /dev/null
|
||||
HOME=/config && s6-setuidgid abc /site/app/Bin/speedtest --accept-license --accept-gdpr > /dev/null
|
||||
HOME=/root
|
||||
fi
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user