Commit Graph

23 Commits

Author SHA1 Message Date
d761f96c0b Added AddTileConfig documentation to example HTTPD config (#372)
_Also_:
- Removed `AddTileMimeConfig` from example `HTTPD` config
  - No longer needed after merging #346
  - Deprecation notice incoming with #370
- Added additional `AddTileConfig`/`AddTileMimeConfig` tests
  - Testing failing download with invalid map name in `httpd.conf`
  - Testing parsing invalid `httpd.conf`, e.g.:
    - `LoadTileConfigFile` without arguments
    - `LoadTileConfigFile` without non-existent file
- Replaced `grep` with `${GREP_EXECUTABLE}` in tests
2024-01-11 19:46:00 -07:00
097f941fad Added tests for ATTRIBUTION & DESCRIPTION (#371) 2024-01-11 16:51:07 -07:00
09e7fa1d43 Allow host:port specification for MemcacheD storage backend (#369)
So that MemcacheD hosts and ports other than `localhost` and `11211` can be used.

_Also_:
- Added `ctest --parallel` execution support
- Added tests for custom `MemcacheD` {host}:{port}
- Added tests for `AddTileConfig`/`AddTileMimeConfig`
2024-01-10 16:33:08 -07:00
d8cd8dea9a Add tests for MemcacheD storage backend (#362)
_Also_:
* Added background `renderd` process testing
* Added `renderd` section without `stats_file` testing
* Added `render_*` via TCP tests
* Added `render_* --verbose`  tests
* Added `render_expired --delete-from` tests
* Added `render_expired --no-progress` tests
* Added `render_expired --touch-from` tests
* Added `PARAMETERIZE_STYPE=language` map configuration testing
* Added `HTCPHOST`/`HOST` map configuration testing
2024-01-06 13:25:49 -07:00
ff06794c00 Added missing signal handlers (#364)
`renderd` coverage is otherwise not properly reported

_Also:_
- Removed `freebsd12` from CI
  - Packages are no longer provided (http://pkg.freebsd.org/)
- Added test for `HTCP host name` specification
- Renamed files in `src`/`includes` to match target names
  - `src/daemon.c` → `src/renderd.c`
  - `src/speedtest.cpp` →`src/render_speedtest.cpp`
  - `includes/daemon.h` → `includes/renderd.h`
2024-01-03 19:34:39 -07:00
53b77bc1db Added Docker-based building and testing method (#363)
* Build with Docker
* Use CUSTOM_DEFINES for Mapnik building
* Only run `install-package-and-test.yml` if etc, utils or YAML file have changed
2023-12-30 20:57:44 -07:00
3c324648e6 Minor coverage improvements and CTest clean up (#361) 2023-12-14 17:31:52 -07:00
8abe6eed6d Fix DEFAULT_ATTRIBUTION value and add tests (#360)
The value for `DEFAULT_ATTRIBUTION` in `includes/mod_tile.h` needed to be escaped, it was causing a JSON parsing failure.
* Added basic test for `/.../.../tile-layer.json` to ensure parsing is successful
* Added basic tests for `/metrics` & `/mod_tile` URLs
2023-12-12 12:48:15 -07:00
925183a960 Make /status and /dirty URLs controlable with apache conf (#359)
* Allow the …/status URL to be turned on or off (default of on remains)

Add ModTileEnableStatusURL On/Off to allow the …/status to be turned on
(default) or off. Previous behaviour has …/status on, which is not
changed in this patch.

* Allow the …/dirty URL to be turned on or off (default of on remains)

Add ModTileEnableDirtyURL On/Off to allow the …/dirty to be turned on
(default) or off. Previous behaviour has …/dirty on, which is not
changed in this patch.

* Make …/dirty & …/status disabled by default.

This is a breaking change. To get the old default behaviour back, you
must now manually add `ModTileEnableStatusURL On` &
`ModTileEnableDirtyURL On` to your apache configuration.

* Change default for ModTileEnable Dirty/Status URL to On

* Add log output for when `/dirty`/`/status` is Off

* Add tests for "ModTileEnable{Dirty|Status}URL Off"

---------

Co-authored-by: Amanda McCann <amanda@technomancy.org>
2023-12-11 20:47:50 -07:00
4580b2e887 Improve FreeBSD CI Workflows speeds (#358)
The `freebsd-vagrant-action` action now supports running on `Linux` runners, which almost halves the duration of `FreeBSD` building and testing.
2023-12-06 13:32:55 -07:00
c2896c78ec Added OpenSUSE support to build & test pipeline (#344)
* Also added build documentation

Resolves #89
2023-10-05 15:05:53 -07:00
bc0ddfef9c Added more linters (cmakelint & prettier) (#341)
For linting `CMakeLists.txt` & `*.cmake` files (`cmakelint`) as well as various other formats such as `HTML`, `MarkDown` & `YAML` (`prettier`.)

### Also:
* Upgrade `actions/checkout` from `v3` to `v4`
* Output coverage summary to GitHub Job step summary
* Minor build docs cleanup for `CentOS`  & `FreeBSD`
2023-10-02 10:17:22 -07:00
3c86206269 Allow adjusting ports used for CTest testing (#331)
* Allow customizing `httpd` & `renderd` CTest testing TCP ports
2023-09-28 14:53:47 -07:00
c8eba9f6e8 Resolve deprecation of FindDart (#329)
Deprecated with [CMake 3.27](https://cmake.org/cmake/help/latest/module/FindDart.html), which is currently only present in `Fedora Rawhide`
2023-09-28 13:49:15 -07:00
d13186ae7d FreeBSD via Vagrant allows reuse of existing actions (#339)
Currently, there is a lot of duplicate CI config for FreeBSD jobs, this removes that redundancy.
2023-09-28 12:31:53 -07:00
24a5752d93 Fixed various CI failures (#328)
* Fix `Unknown argument "--skip-broken" for command "dnf5"`

* Increase timeout for `render_list` & `render_old` tests

* Sync FreeBSD build command with others (and build Release by default)

* Fix non-default tile tests

* Fixed WEBP test for `libwebp.so.4`
2023-07-21 04:52:22 +02:00
f652ab1521 Configurable ImageIO output format (#318)
* Added the possibility to provide ImageIO's output format in the TYPE string.
For instance:
TYPE=png image/png
TYPE=png image/png png256
TYPE=png image/png png24
TYPE=png image/png png

* Removed useless comments.
Added documentation for output format.

* Added tests for 'webp' output format

* Also added tests for 'png32' output format

* Fix 'webp' sums vary based on version

* Add JPG & use multiple layers on example-map

---------

Co-authored-by: Tim <autintim@gmail.com>
2023-07-20 23:41:18 +02:00
6e20fba5e9 Generate config files and directories with CMake (#316)
* Generate config files and directories with CMake

CMake >= 3.13 required due to 'https://cmake.org/Bug/view.php?id=14444'

* Update CI pipeline
2023-07-20 23:34:21 +02:00
708527591a Add coverage reporting support (#313)
* Add coverage reporting

* No longer need to run `astyle` from within a container

* Multiple test runs seems to help catch more coverage

* Re-order renderd shutdown processes

* Move coverage job into a new workflow
2023-07-20 09:28:53 +00:00
d408481e3a Add a few more tests for render_* (#315) 2023-07-20 09:27:37 +00:00
f521540df1 Allow renderd* sections to follow map sections in renderd.conf (#308)
* Allow `renderd*` sections to precede `map` sections in config file

* Adding test

* astyle formatting
2023-03-09 15:58:00 +00:00
07c8ad19f7 Test CMake build system support in GitHub Actions (#288)
* GitHub Actions

* Consolidate Mapnik v3/v4 builds into one workflow

* Removed pkg-config from macos-build-dependencies

* Simplify FreeBSD build

* Remove now-merged patch from install latest Mapnik action
2023-03-03 17:24:29 +00:00
f4ee376b35 Build mod_tile with cmake 2023-03-01 11:57:10 +00:00