diff options
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/build.yml | 73 | ||||
-rw-r--r-- | .github/workflows/clang10_test.yml | 72 | ||||
-rw-r--r-- | .github/workflows/gcc10_test.yml | 71 | ||||
-rw-r--r-- | .github/workflows/gcc9_test.yml | 71 | ||||
-rw-r--r-- | .github/workflows/mariadb.yml | 69 | ||||
-rw-r--r-- | .github/workflows/mysql.yml | 69 |
6 files changed, 425 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000..f136e1bdb --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,73 @@ +name: build + +on: [push, pull_request] + +env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + DEBIAN_COMMON_PACKAGES: make zlib1g-dev libpcre3-dev git python + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + # gcc, clang-8, clang-9 removed for reduce number of jobs + CC: ["gcc-10", "clang-10"] + RENEWAL: [""] + CLIENT_TYPE: ["", "--enable-packetver-re", "--enable-packetver-zero"] + SANITIZER: [""] + PACKET_VERSION: ["--enable-packetver=20100105", "--enable-packetver=20171018"] + LTO: ["", "--enable-lto"] + exclude: + - PACKET_VERSION: "--enable-packetver=20100105" + CLIENT_TYPE: "--enable-packetver-zero" + - CC: "clang-10" + LTO: "--enable-lto" + container: + image: debian:unstable + services: + mariadb: + image: mariadb:latest + ports: + - 33306:3306 + env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 + env: + INSTALL_PACKAGES: ${{ matrix.CC }} mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb + CC: ${{ matrix.CC }} + CONFIGURE_FLAGS: CC=${{ matrix.CC }} --enable-debug --enable-Werror --enable-buildbot ${{ matrix.RENEWAL }} ${{ matrix.CLIENT_TYPE }} ${{ matrix.SANITIZER }} ${{ matrix.PACKET_VERSION }} --enable-epoll + steps: + - uses: actions/checkout@v1 + with: + fetch-depth: 1 + + - name: info + run: | + uname -a + + - name: install packages + run: | + ./tools/ci/retry.sh apt-get update + ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES + + - name: init database + run: | + ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST + + - name: get plugins + run: | + ./tools/ci/travis.sh getplugins || true + + - name: build + run: | + ./tools/ci/travis.sh build $CONFIGURE_FLAGS + + # for run default config will show warnings diff --git a/.github/workflows/clang10_test.yml b/.github/workflows/clang10_test.yml new file mode 100644 index 000000000..28cb144f6 --- /dev/null +++ b/.github/workflows/clang10_test.yml @@ -0,0 +1,72 @@ +name: clang10_test + +on: [push, pull_request] + +env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + DEBIAN_COMMON_PACKAGES: make zlib1g-dev libpcre3-dev git python + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + # clang-8, clang-9 removed for reduce number of jobs + CC: [clang-10] + RENEWAL: ["", "--disable-renewal"] + CLIENT_TYPE: ["", "--enable-packetver-re", "--enable-packetver-zero"] + SANITIZER: ["--disable-manager", "--disable-manager --enable-sanitize=full"] + PACKET_VERSION: ["--enable-packetver=20200304", "--enable-packetver=20130724"] + exclude: + - PACKET_VERSION: "--enable-packetver=20130724" + CLIENT_TYPE: "--enable-packetver-zero" + container: + image: debian:unstable + services: + mariadb: + image: mariadb:latest + ports: + - 33306:3306 + env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 + env: + INSTALL_PACKAGES: ${{ matrix.CC }} mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb + CC: ${{ matrix.CC }} + CONFIGURE_FLAGS: CC=${{ matrix.CC }} --enable-debug --enable-Werror --enable-buildbot ${{ matrix.RENEWAL }} ${{ matrix.CLIENT_TYPE }} ${{ matrix.SANITIZER }} ${{ matrix.PACKET_VERSION }} + steps: + - uses: actions/checkout@v1 + with: + fetch-depth: 1 + + - name: info + run: | + uname -a + + - name: install packages + run: | + ./tools/ci/retry.sh apt-get update + ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES + + - name: init database + run: | + ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST + + - name: get plugins + run: | + ./tools/ci/travis.sh getplugins || true + + - name: build + run: | + ./tools/ci/travis.sh build $CONFIGURE_FLAGS + + - name: test + run: | + ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST diff --git a/.github/workflows/gcc10_test.yml b/.github/workflows/gcc10_test.yml new file mode 100644 index 000000000..1b0909be8 --- /dev/null +++ b/.github/workflows/gcc10_test.yml @@ -0,0 +1,71 @@ +name: gcc10_test + +on: [push, pull_request] + +env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + DEBIAN_COMMON_PACKAGES: make zlib1g-dev libpcre3-dev git python + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + CC: [gcc-10] + RENEWAL: ["", "--disable-renewal"] + CLIENT_TYPE: ["", "--enable-packetver-re", "--enable-packetver-zero"] + SANITIZER: ["--disable-manager", "--disable-manager --enable-sanitize=full"] + PACKET_VERSION: ["--enable-packetver=20200304", "--enable-packetver=20130724"] + exclude: + - PACKET_VERSION: "--enable-packetver=20130724" + CLIENT_TYPE: "--enable-packetver-zero" + container: + image: debian:unstable + services: + mariadb: + image: mariadb:latest + ports: + - 33306:3306 + env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 + env: + INSTALL_PACKAGES: ${{ matrix.CC }} mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb + CC: ${{ matrix.CC }} + CONFIGURE_FLAGS: CC=${{ matrix.CC }} --enable-debug --enable-Werror --enable-buildbot ${{ matrix.RENEWAL }} ${{ matrix.CLIENT_TYPE }} ${{ matrix.SANITIZER }} ${{ matrix.PACKET_VERSION }} --enable-lto + steps: + - uses: actions/checkout@v1 + with: + fetch-depth: 1 + + - name: info + run: | + uname -a + + - name: install packages + run: | + ./tools/ci/retry.sh apt-get update + ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES + + - name: init database + run: | + ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST + + - name: get plugins + run: | + ./tools/ci/travis.sh getplugins || true + + - name: build + run: | + ./tools/ci/travis.sh build $CONFIGURE_FLAGS + + - name: test + run: | + ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST diff --git a/.github/workflows/gcc9_test.yml b/.github/workflows/gcc9_test.yml new file mode 100644 index 000000000..4e9dc9bd9 --- /dev/null +++ b/.github/workflows/gcc9_test.yml @@ -0,0 +1,71 @@ +name: gcc9_test + +on: [push, pull_request] + +env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + DEBIAN_COMMON_PACKAGES: make zlib1g-dev libpcre3-dev git python + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + CC: [gcc] + RENEWAL: ["", "--disable-renewal"] + CLIENT_TYPE: ["", "--enable-packetver-re", "--enable-packetver-zero"] + SANITIZER: ["--disable-manager", "--disable-manager --enable-sanitize=full"] + PACKET_VERSION: ["--enable-packetver=20200304", "--enable-packetver=20130724"] + exclude: + - PACKET_VERSION: "--enable-packetver=20130724" + CLIENT_TYPE: "--enable-packetver-zero" + container: + image: debian:unstable + services: + mariadb: + image: mariadb:latest + ports: + - 33306:3306 + env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 + env: + INSTALL_PACKAGES: ${{ matrix.CC }} mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb + CC: ${{ matrix.CC }} + CONFIGURE_FLAGS: CC=${{ matrix.CC }} --enable-debug --enable-Werror --enable-buildbot ${{ matrix.RENEWAL }} ${{ matrix.CLIENT_TYPE }} ${{ matrix.SANITIZER }} ${{ matrix.PACKET_VERSION }} --enable-lto + steps: + - uses: actions/checkout@v1 + with: + fetch-depth: 1 + + - name: info + run: | + uname -a + + - name: install packages + run: | + ./tools/ci/retry.sh apt-get update + ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES + + - name: init database + run: | + ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST + + - name: get plugins + run: | + ./tools/ci/travis.sh getplugins || true + + - name: build + run: | + ./tools/ci/travis.sh build $CONFIGURE_FLAGS + + - name: test + run: | + ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST diff --git a/.github/workflows/mariadb.yml b/.github/workflows/mariadb.yml new file mode 100644 index 000000000..4479e9e4d --- /dev/null +++ b/.github/workflows/mariadb.yml @@ -0,0 +1,69 @@ +name: mariadb + +on: [push, pull_request] + +env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + DEBIAN_COMMON_PACKAGES: make zlib1g-dev libpcre3-dev git python + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + CC: [gcc] + RENEWAL: [""] + CLIENT_TYPE: [""] + SANITIZER: ["--disable-manager", "--enable-sanitize=full"] + PACKET_VERSION: ["--enable-packetver=20200304"] + MYSQL: ["10.1", "10.5", "latest"] + container: + image: debian:unstable + services: + mysql: + image: mariadb:${{ matrix.MYSQL }} + ports: + - 33306:3306 + env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 + env: + INSTALL_PACKAGES: ${{ matrix.CC }} mariadb-client libmariadbclient-dev-compat + SQLHOST: mysql + CC: ${{ matrix.CC }} + CONFIGURE_FLAGS: CC=${{ matrix.CC }} --enable-debug --enable-Werror --enable-buildbot ${{ matrix.RENEWAL }} ${{ matrix.CLIENT_TYPE }} ${{ matrix.SANITIZER }} ${{ matrix.PACKET_VERSION }} + steps: + - uses: actions/checkout@v1 + with: + fetch-depth: 1 + + - name: info + run: | + uname -a + + - name: install packages + run: | + ./tools/ci/retry.sh apt-get update + ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES + + - name: init database + run: | + ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST + + - name: get plugins + run: | + ./tools/ci/travis.sh getplugins || true + + - name: build + run: | + ./tools/ci/travis.sh build $CONFIGURE_FLAGS + + - name: test + run: | + ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml new file mode 100644 index 000000000..98e760a87 --- /dev/null +++ b/.github/workflows/mysql.yml @@ -0,0 +1,69 @@ +name: mysql + +on: [push, pull_request] + +env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + DEBIAN_COMMON_PACKAGES: make zlib1g-dev libpcre3-dev git python + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + CC: [gcc] + RENEWAL: [""] + CLIENT_TYPE: [""] + SANITIZER: ["--disable-manager", "--enable-sanitize=full"] + PACKET_VERSION: ["--enable-packetver=20200304"] + MYSQL: ["5.6", "5.7"] + container: + image: debian:unstable + services: + mysql: + image: mysql:${{ matrix.MYSQL }} + ports: + - 33306:3306 + env: + MYSQL_DATABASE: 'ragnarok' + MYSQL_USER: 'ragnarok' + MYSQL_PASSWORD: 'ragnarok' + MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' + options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 + env: + INSTALL_PACKAGES: ${{ matrix.CC }} mysql-client libmysqlclient-dev + SQLHOST: mysql + CC: ${{ matrix.CC }} + CONFIGURE_FLAGS: CC=${{ matrix.CC }} --enable-debug --enable-Werror --enable-buildbot ${{ matrix.RENEWAL }} ${{ matrix.CLIENT_TYPE }} ${{ matrix.SANITIZER }} ${{ matrix.PACKET_VERSION }} + steps: + - uses: actions/checkout@v1 + with: + fetch-depth: 1 + + - name: info + run: | + uname -a + + - name: install packages + run: | + ./tools/ci/retry.sh apt-get update + ./tools/ci/retry.sh apt-get install -y -qq $INSTALL_PACKAGES $DEBIAN_COMMON_PACKAGES + + - name: init database + run: | + ./tools/ci/travis.sh importdb ragnarok ragnarok ragnarok $SQLHOST + + - name: get plugins + run: | + ./tools/ci/travis.sh getplugins || true + + - name: build + run: | + ./tools/ci/travis.sh build $CONFIGURE_FLAGS + + - name: test + run: | + ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST |