Commit Graph

169 Commits

Author SHA1 Message Date
Yuri Astrakhan
6b114cc7f1
Docker improvements and CI tests (#472)
* Change docker image to use `entrypoint` -- so that Martin can be used
as a command:

```bash
docker run maplibre/martin <parameters>
```

* The docker image is now tested the same way as in the CI tests
* Added a few changes to the justfile

Fixes #436
2022-11-02 19:00:05 +01:00
Yuri Astrakhan
b8ac719be8
Rework and consolidate CI (#467)
Rework CI to run tests locally using the VM-installed Postgres on all
target platforms.

### CI jobs
* Build release versions on Linux/Win/Mac and save build results as
output artifacts
* In a separate VMs (Linux/Win/Mac)
* use
[nyurik/action-setup-postgis](https://github.com/nyurik/action-setup-postgis)
to install postgis and run tests using the built artifacts
  * run `cargo test` on Linux only
* copy built artifacts from the build step, and run tests using the
release martin binary
  * package and publish if this is a release

### Other changes
* Port some minor changes from the rewrite to porting easier
* minor cleanups
* remove all "expected" data files - too unstable to be usable
2022-10-31 16:28:21 -04:00
Yuri Astrakhan
a0a411f088
Consolidate DB init and tests (#463)
* Add justfile to simplify running all the tests
* Save all PBF outputs to the text files
* Consolidate all tests to reuse the same code
* Consolidate database initialization
* updated readme with the new instructions

Note that while this PR creates "expected" files, the CI cannot validate
the generated results because the output is not stable. Eventually we
may try to output just the non-geometry values to have reasonable tests
comparing against the expected results.
2022-10-28 14:52:39 -04:00
Yuri Astrakhan
01b9fe4fe1
Avoid using 3rd party GH actions if possible (#464)
* action-rs actions are no longer maintained, switching to the built-in
approach where possible, or dtolnay/rust-toolchain otherwise
2022-10-26 12:52:31 +03:00
Yuri Astrakhan
9b56fe7b9b
Refactor CI tests into separate scripts (#432)
This PR re-uses some ideas by @gbip from #448

* move all CI github workflow tests into the dedicated shell scripts
* consolitade two database initialization scripts into one
2022-10-25 14:54:36 -04:00
Yuri Astrakhan
def4a6f1ec
Warn on unknown cfg, CI cleanup (#461)
* Detect all unrecognized config file values, and report them. Ideally
we want to use `serde-ignored` crate, but it doesn't work with flattened
structs (yet). So using a bad workaround.
* CI test has been using all sorts of somewhat duplicated temporary pbf
files - cleaned up to `tmp.pbf`, and made sure curl only shows errors,
not download stats.
* In CI, crash psql instead of silently ignoring errors
* Don't serialize optional config values as nulls
* Tiny error message cleanup
2022-10-24 19:45:26 +02:00
Stepan Kuzmin
2e1940829d
Add separate build job in CI (#438)
This PR adds a separate build job in CI and installs OpenSSL for Windows
runner. Closes https://github.com/maplibre/martin/issues/437
2022-10-22 13:39:05 -04:00
Yuri Astrakhan
7167594afb No point in doing a check in lint
it will be done in the test anyway, plus clippy does it as well.
2022-10-22 11:11:16 -04:00
Yuri Astrakhan
119a8ed201
Consolidate and simplify linting CI (#458)
Merge separate nearly-identical linting steps into one. No point to separate, and tries to abuse servers a bit less (saves power too! :) )
2022-10-22 11:01:16 -04:00
Pat Sier
7eca0540a0
Remove automated docker builds for PRs (#450)
Adds a conditional to the docker job that won't run any of the Docker build steps if triggered by a PR.
2022-10-18 10:07:51 -04:00
Yuri Astrakhan
ee08baa67b add release trigger for the CI job 2022-10-07 16:32:40 -04:00
Yuri Astrakhan
b9ec972ac9 Revert "Run tests on ubuntu, macos, and windows"
This reverts commit 07a4e5c6de.
2022-10-05 21:06:04 -04:00
Yuri Astrakhan
07a4e5c6de Run tests on ubuntu, macos, and windows 2022-10-05 21:03:20 -04:00
dependabot[bot]
44f293d2bb
chore(deps): bump dependabot/fetch-metadata from 1.3.3 to 1.3.4 (#424)
Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 1.3.3 to 1.3.4.
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](https://github.com/dependabot/fetch-metadata/compare/v1.3.3...v1.3.4)

---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-30 22:36:36 +00:00
Yuri Astrakhan
5ab2cec8f9
Attempt to migrate CI to maplibre/martin (#408)
Note that I manually published [maplibre/martin:latest](https://hub.docker.com/r/maplibre/martin) to docker, so it might be able to pass CI ok.  I have not looked deeply into the existing CI workflow - @stepankuzmin any suggestions on changes to that?  The github actions are now setup

P.S. I am not certain what that whole `brew/tap` thing is - don't know enough about Macs
2022-09-26 21:48:46 -04:00
Yuri Astrakhan
7a14d6a3ed
feat!: remove --watch support (#381)
BREAKING CHANGE: Remove --watch support and ignore the command line parameter
2022-08-10 12:23:44 -04:00
Stepan Kuzmin
40d2b647a9
Auto approve Dependabot semver patch PRs (#368) 2022-07-29 12:20:37 +03:00
Yuri Astrakhan
275d15a4fb
chore: fix clippy in benchmarks, and adjust CI (#363)
Clippy wasn't happy, and we apparently weren't testing all targets.
2022-07-06 12:24:45 +03:00
dependabot[bot]
84a11092f4
chore(deps): bump dependabot/fetch-metadata from 1.3.2 to 1.3.3 (#359)
Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 1.3.2 to 1.3.3.
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](https://github.com/dependabot/fetch-metadata/compare/v1.3.2...v1.3.3)

---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-05 10:21:31 -04:00
Stepan Kuzmin
ab9699482a
ci: use squash instead of merge when auto-merging Dependabot PRs (#360)
use squash instead of merge when auto-merging Dependabot PRs
2022-07-02 08:08:59 -04:00
dependabot[bot]
dd91fd0068
chore(deps): bump dependabot/fetch-metadata from 1.3.1 to 1.3.2 (#357)
Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](https://github.com/dependabot/fetch-metadata/compare/v1.3.1...v1.3.2)

---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-30 19:02:33 -04:00
dependabot[bot]
405e8226d5
chore(deps): bump dependabot/fetch-metadata from 1.1.1 to 1.3.1 (#339)
Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 1.1.1 to 1.3.1.
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](https://github.com/dependabot/fetch-metadata/compare/v1.1.1...v1.3.1)

---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-29 11:17:17 +03:00
dependabot[bot]
b763fd2902
chore(deps): bump actions/checkout from 1 to 3 (#336)
Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v1...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-27 15:00:45 +03:00
dependabot[bot]
dc4058f6dd
chore(deps): bump codecov/codecov-action from 1 to 3 (#335)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 1 to 3.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v1...v3)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-27 15:00:32 +03:00
Stepan Kuzmin
9b4df609c6
ci: enable dependabot auto-merge (#337) 2022-05-27 14:46:48 +03:00
Stepan Kuzmin
69bdc7f9d0
ci: improve docker job (#334) 2022-05-27 13:35:06 +03:00
Stepan Kuzmin
3edec51564
Update FUNDING.yml 2022-03-10 15:31:29 +02:00
Stepan Kuzmin
75109f8549
Create FUNDING.yml 2022-03-10 15:30:38 +02:00
Stepan Kuzmin
b3401785b2
feat: add default SRID support (#308)
* feat: add default SRID support
2022-02-13 15:43:52 +03:00
Stepan Kuzmin
396e563fd1
chore: update dependencies (#278)
* chore: update dependencies

* chore: use main instead of master
2021-11-07 17:28:21 +03:00
Stepan Kuzmin
fc9170d164
feat: add multiple geometry columns support in table sources (#269)
* feat: add multiple geometry columns support in table sources

* test: add multiple geometry tests
2021-10-21 12:20:33 +03:00
Stepan Kuzmin
206307fd22
test: add config and multiple zoom level tests (#262)
* test: add config and multiple zoom level tests

* test: add more fixtures

* test: use ST_CurveToLine in function source fixtures

* test: update vtzero binaries
2021-10-12 17:56:45 +03:00
Stepan Kuzmin
40b0a0c26a
feat: add bounds to tilejson endpoints (#260) (h/t @jaspervercnocke) 2021-10-10 12:09:56 +03:00
Stepan Kuzmin
f935db9f1f
chore: add benchmarks (#230) 2021-07-23 11:04:34 +03:00
Paul FLORENCE
49942734af
fix: invalid json escaping (#224) (h/t @gbip)
* Fix invalid json escaping

* test: add test for function_source with query params
2021-07-16 12:09:18 +03:00
dependabot-preview[bot]
8585849234
Upgrade to GitHub-native Dependabot (#205)
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-05-01 19:36:06 +03:00
Stepan Kuzmin
3c01125fc5
feat: add composite sources support (#184)
* feat: add composite sources support WIP

* feat: handle empty composite sources

* fix: decompose queries

* docs: add docs on composite sources

* ci: push docker image

* test: add composite source tests
2021-04-24 20:19:37 +03:00
Stepan Kuzmin
e58ac44246
ci: upgrade to docker/build-push-action@v2 (#169) 2021-01-16 15:48:39 +03:00
Stepan Kuzmin
7d5dfa8174
chore: drop mdillon postgis in favor of official image (#157) 2020-12-27 16:35:05 +03:00
Stepan Kuzmin
c1c59e158d
feat: add ssl/tls support #63 (#90)
* feat: add ssl/tls support #63

* feat: add danger-accept-invalid-certs option

* ci: switch to ekidd/rust-musl-builder:stable

* ci: enable docker/build-push-action
2020-06-02 09:49:21 +03:00
Stepan Kuzmin
1e34676a14
ci: refactor CI (#86)
* style: run fmt

* ci: run release only on tags

* ci: switch to actions/checkout@v2

* ci: add grcov
* ci: update docker job
2020-05-05 14:13:48 +03:00
Stepan Kuzmin
9887d2bb99
feat: upgrade postgres crates (#85)
* feat: upgrade postgres crates

* style: rename db types

* ci: switch to x86_64-unknown-linux-gnu
2020-05-04 21:21:11 +03:00
Stepan Kuzmin
ad718da568 ci: 🎡 remove docker image publish to GPR 2019-11-08 18:55:16 +03:00
Stepan Kuzmin
430efe86e0 ci: 🎡 publish the Docker image to GPR 2019-11-08 17:30:27 +03:00
Stepan Kuzmin
215d3647a2
ci: 🎡 add security audit check 2019-10-27 16:13:17 +03:00
Stepan Kuzmin
5a807e40e2
feat: upgrade actix-web to 1.0 (#33)
* test: 💍 add function sources tests

* test: 💍 limit postgres pool size in tests

* feat: 🎸 upgrade actix-web to 1.0
2019-10-26 20:37:49 +03:00
Stepan Kuzmin
31ff2bfd90 ci: 🎡 test for docker image build in CI 2019-09-30 19:12:00 +03:00
Stepan Kuzmin
947add145c ci: 🎡 run docker image action on push into master 2019-09-30 18:51:49 +03:00
Stepan Kuzmin
ac48f1c9f8 ci: 🎡 add docker image action 2019-09-30 18:34:06 +03:00
Stepan Kuzmin
656f5392da ci: 🎡 fix sha256 generation 2019-09-30 16:24:15 +03:00
Stepan Kuzmin
d071bde8ce chore: 🤖 prepare v0.4.0 release 2019-09-30 15:55:54 +03:00
Stepan Kuzmin
f48a70e933 ci: 🎡 remove release notes 2019-09-30 13:33:42 +03:00
Stepan Kuzmin
f334070acb ci: 🎡 cleanup 2019-09-30 12:49:35 +03:00
Stepan Kuzmin
72ff83bc90 ci: 🎡 add release notes 2019-09-30 12:42:49 +03:00
Stepan Kuzmin
1bd48d50d7
ci: 🎡 update CI workflow 2019-09-30 08:43:16 +03:00
Stepan Kuzmin
9c7d57e389
ci: 🎡 rewrite workflow 2019-09-29 21:47:24 +03:00
Stepan Kuzmin
f248541969
ci: 🎡 debug 2019-09-29 18:52:05 +03:00
Stepan Kuzmin
ef636ffbca
ci: 🎡 use tag from env 2019-09-29 18:38:07 +03:00
Stepan Kuzmin
9053bbaab7
ci: 🎡 install toolchain 2019-09-29 18:16:11 +03:00
Stepan Kuzmin
31dffd043b
ci: 🎡 use Rust cargo Action 2019-09-29 18:09:16 +03:00
Stepan Kuzmin
2eb54bd2ea
ci: 🎡 use matrix strategy on release action 2019-09-29 17:13:08 +03:00
Stepan Kuzmin
682bc879f7
ci: 🎡 add release action 2019-09-29 16:30:54 +03:00
Stepan Kuzmin
bf9c66a89e
ci: 🎡 cleanup 2019-09-29 15:52:35 +03:00
Stepan Kuzmin
2282e8fd7f
ci: 🎡 run server in background 2019-09-29 15:41:32 +03:00
Stepan Kuzmin
3222a1d074
ci: 🎡 add vtzero check 2019-09-29 15:32:19 +03:00
Stepan Kuzmin
75ed97dcdc
Update rust.yml 2019-09-29 14:19:10 +03:00
Stepan Kuzmin
0bd3acd917
Update rust.yml 2019-09-29 14:05:32 +03:00
Stepan Kuzmin
587ec3c185
Update rust.yml 2019-09-29 13:55:30 +03:00
Stepan Kuzmin
449a4bceda
Update rust.yml 2019-09-29 13:45:49 +03:00