|
79 | 79 | - name: Install sqlite (Linux)
|
80 | 80 | if: runner.os == 'Linux' && matrix.backend == 'sqlite'
|
81 | 81 | run: |
|
82 |
| - sudo apt-get update |
83 |
| - sudo apt-get install -y libsqlite3-dev |
| 82 | + # ubuntu's libsqlite3 version is currently broken |
| 83 | + # https://bugs.launchpad.net/ubuntu/+source/sqlite3/+bug/2087772 |
| 84 | + # That results in segfaults in our tests :( |
| 85 | + sudo apt-get remove libsqlite3-dev |
| 86 | + curl -fsS --retry 3 -o sqlite-autoconf-3400100.tar.gz https://www.sqlite.org/2022/sqlite-autoconf-3400100.tar.gz |
| 87 | + tar zxf sqlite-autoconf-3400100.tar.gz |
| 88 | + cd sqlite-autoconf-3400100 |
| 89 | + CFLAGS="$CFLAGS -O2 -fno-strict-aliasing \ |
| 90 | + -DSQLITE_DEFAULT_FOREIGN_KEYS=1 \ |
| 91 | + -DSQLITE_SECURE_DELETE \ |
| 92 | + -DSQLITE_ENABLE_COLUMN_METADATA \ |
| 93 | + -DSQLITE_ENABLE_FTS3_PARENTHESIS \ |
| 94 | + -DSQLITE_ENABLE_RTREE=1 \ |
| 95 | + -DSQLITE_SOUNDEX=1 \ |
| 96 | + -DSQLITE_ENABLE_UNLOCK_NOTIFY \ |
| 97 | + -DSQLITE_OMIT_LOOKASIDE=1 \ |
| 98 | + -DSQLITE_ENABLE_DBSTAT_VTAB \ |
| 99 | + -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 \ |
| 100 | + -DSQLITE_ENABLE_LOAD_EXTENSION \ |
| 101 | + -DSQLITE_ENABLE_JSON1 \ |
| 102 | + -DSQLITE_LIKE_DOESNT_MATCH_BLOBS \ |
| 103 | + -DSQLITE_THREADSAFE=1 \ |
| 104 | + -DSQLITE_ENABLE_FTS3_TOKENIZER=1 \ |
| 105 | + -DSQLITE_MAX_SCHEMA_RETRY=25 \ |
| 106 | + -DSQLITE_ENABLE_PREUPDATE_HOOK \ |
| 107 | + -DSQLITE_ENABLE_SESSION \ |
| 108 | + -DSQLITE_ENABLE_STMTVTAB \ |
| 109 | + -DSQLITE_MAX_VARIABLE_NUMBER=250000" \ |
| 110 | + ./configure --prefix=/usr \ |
| 111 | + --enable-threadsafe \ |
| 112 | + --enable-dynamic-extensions \ |
| 113 | + --libdir=/usr/lib/x86_64-linux-gnu \ |
| 114 | + --libexecdir=/usr/lib/x86_64-linux-gnu/sqlite3 |
| 115 | + sudo make |
| 116 | + sudo make install |
84 | 117 | echo "SQLITE_DATABASE_URL=/tmp/test.db" >> $GITHUB_ENV
|
85 | 118 |
|
86 | 119 | - name: Install mysql (Linux)
|
@@ -485,9 +518,10 @@ jobs:
|
485 | 518 | key: mysql_bundled-cargo-${{ hashFiles('**/Cargo.toml') }}
|
486 | 519 | - name: Install Mysql (Linux)
|
487 | 520 | run: |
|
488 |
| - sudo systemctl start mysql.service |
489 | 521 | sudo apt-get update
|
490 | 522 | sudo apt-get -y install libmysqlclient-dev llvm
|
| 523 | + sudo systemctl start mysql.service |
| 524 | + sleep 5 |
491 | 525 | mysql -e "create database diesel_test; create database diesel_unit_test; grant all on \`diesel_%\`.* to 'root'@'localhost';" -uroot -proot
|
492 | 526 | echo "MYSQL_DATABASE_URL=mysql://root:[email protected]/diesel_test" >> $GITHUB_ENV
|
493 | 527 | echo "MYSQL_EXAMPLE_DATABASE_URL=mysql://root:[email protected]/diesel_example" >> $GITHUB_ENV
|
|
0 commit comments