2021-02-18 16:02:59 +00:00
|
|
|
name: CI
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches: [ master ]
|
|
|
|
pull_request:
|
|
|
|
branches: [ master ]
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
|
|
|
node-version: [10, 12, 14, 15]
|
2021-04-11 03:07:56 +00:00
|
|
|
|
|
|
|
# services:
|
|
|
|
# mysql:
|
|
|
|
# image: mysql:5.7
|
|
|
|
# env:
|
|
|
|
# MYSQL_USER: user
|
|
|
|
# MYSQL_PASSWORD: pass
|
|
|
|
# MYSQL_ALLOW_EMPTY_PASSWORD: yes
|
|
|
|
# MYSQL_DATABASE: 'testdb'
|
|
|
|
# MYSQL_ROOT_PASSWORD: root
|
|
|
|
# MYSQL_HOST: localhost
|
|
|
|
# ports:
|
|
|
|
# - 3306:3306
|
|
|
|
# options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
|
2021-02-18 16:02:59 +00:00
|
|
|
|
|
|
|
steps:
|
2021-04-11 03:07:56 +00:00
|
|
|
- name: Shutdown Ubuntu MySQL (SUDO)
|
|
|
|
run: sudo service mysql stop
|
2021-02-18 16:02:59 +00:00
|
|
|
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
|
|
uses: actions/setup-node@v2
|
|
|
|
with:
|
|
|
|
node-version: ${{ matrix.node-version }}
|
|
|
|
|
2021-04-11 03:07:56 +00:00
|
|
|
|
|
|
|
# - uses: docker://library/mysql:5.7
|
|
|
|
# - name: Set up MySQL 5.7
|
|
|
|
# uses: mirromutth/mysql-action@master
|
|
|
|
# with:
|
|
|
|
# mysql version: 5.7
|
|
|
|
# mysql database: testdb
|
|
|
|
# mysql root password: root
|
|
|
|
# - name: npm install, build, and test
|
|
|
|
# run: |
|
|
|
|
# npm install
|
|
|
|
# npm test
|
|
|
|
# env:
|
|
|
|
# CI: true
|
|
|
|
|
|
|
|
|
2021-02-18 16:02:59 +00:00
|
|
|
- name: Create DB and User
|
2021-04-11 04:11:49 +00:00
|
|
|
# # the first line is crucial
|
2021-02-18 16:02:59 +00:00
|
|
|
run: |
|
2021-04-11 03:07:56 +00:00
|
|
|
docker container ls
|
2021-04-11 04:11:49 +00:00
|
|
|
docker container run -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7 --mount "type=bind,src=/run/mysqld,dst=/var/run/mysqld"
|
|
|
|
sudo service mysql stop
|
2021-04-11 03:07:56 +00:00
|
|
|
mysql -V
|
|
|
|
# docker run -it mysql
|
|
|
|
# docker exec `docker ps -q` mysqld --version --mount "type=bind,src=/run/mysqld,dst=/var/run/mysqld"
|
|
|
|
# npm install
|
|
|
|
# npm test
|
|
|
|
# sudo /etc/init.d/mysql start
|
|
|
|
# mysql -V
|
|
|
|
# mysql --host 127.0.0.1 --port ${{ job.services.mysql.ports['3306'] }} -uroot -proot -e "SHOW DATABASES"
|
|
|
|
# docker image ls
|
|
|
|
# docker container ls
|
|
|
|
# sudo systemctl enable mysql.service
|
|
|
|
# docker exec `docker ps -q` mysqld --version
|
|
|
|
# mysql -V
|
|
|
|
# mysql -e 'CREATE DATABASE testdb;' -uroot -proot
|
|
|
|
# mysql -e 'SHOW DATABASES;' -uroot -proot
|
|
|
|
# mysql -uroot -proot -e "CREATE USER 'user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pass';"
|
|
|
|
# mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON * . * TO 'user'@'localhost';"
|
|
|
|
# mysql -uroot -proot -e "FLUSH PRIVILEGES"
|
|
|
|
# run: |
|
|
|
|
# sudo /etc/init.d/mysql start
|
|
|
|
# /usr/bin/docker
|
|
|
|
# docker.io/library/mysql:5.7
|
|
|
|
# sudo netstat -ln | grep mysql
|
|
|
|
# mysqladmin -proot -uroot root variables
|
|
|
|
# mysql -uroot -proot -e 'CREATE DATABASE testdb;'
|
|
|
|
# mysql -uroot -proot -e "CREATE USER 'user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pass';"
|
|
|
|
# mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON * . * TO 'user'@'localhost';"
|
|
|
|
# mysql -uroot -proot -e "FLUSH PRIVILEGES"
|
2021-04-11 04:11:49 +00:00
|
|
|
# - run: npm install
|
|
|
|
# - run: npm test
|
2021-04-11 03:07:56 +00:00
|
|
|
# env:
|
|
|
|
# host: 127.0.0.1
|
|
|
|
# sudo ls -a /var/run/mysqld/
|
|
|
|
|