Raul Ochoa
d311dd4245
Use PgConnection to set db auth
...
No need to use request context anymore
X-Cache-Channel will be set now even for private tables: fixes #253
2015-02-16 11:57:53 +01:00
Raul Ochoa
b25bb03cdf
Merge branch 'master' into private-cdb_tablemetadata
...
Conflicts:
lib/cartodb/server_options.js
test/support/sql/windshaft.test.sql
2015-02-16 11:41:45 +01:00
Raul Ochoa
d40b15454b
Run some tests only if they are using the SQL API
2015-02-09 14:38:29 +01:00
Raul Ochoa
e1e925bd9e
Run postgresql/sql-api dependant tests against two implementations
...
This time for real.
2015-02-09 14:33:17 +01:00
Raul Ochoa
6bd967e9fb
Merge branch 'master' into medusa-improvements
...
Conflicts:
lib/cartodb/server_options.js
2015-02-06 12:01:28 +01:00
Raul Ochoa
2736b93c69
test to validate it's not possible to override authorization
...
with a crafted layergroup
2015-02-05 16:47:37 +01:00
Raul Ochoa
c17af23a40
A non empty datasource from MapConfigNamedLayersAdapter.getLayers
...
means the affected tables can have private tables involved.
That implies QueryTablesApi will need the proper user to use
CDB_QueryTables. So we store it in a request context to use it in
the afterLayergroupCreate call.
Tiles for these layergroups will fail to add a X-Cache-Channel
header because it won't be possible to use the proper user within
those tiles. Ok, they will fail if they are not requested through
the same tiler instance because if they are they most likely will
reuse the in memory cache.
See https://github.com/CartoDB/Windshaft-cartodb/issues/253
2015-02-04 19:31:20 +01:00
Raul Ochoa
fbecc11aa5
Do not use the SQL API Emulator for testing named layers as it hides
...
an integration issue with cdb_querytables
2015-02-04 19:01:14 +01:00
Raul Ochoa
8cacc3bb9e
Merge branch 'master' into 239-mapconfig-named-maps-extension
2015-02-04 18:59:07 +01:00
Raul Ochoa
a82af16347
Adds a template test with http layer
2015-02-04 18:57:46 +01:00
Raul Ochoa
2c7bc6adde
Datasource to give per-layer authentication in named layers
...
Make beforeLayergroupCreate to return a datasource with different
authentication for the different layers.
- Named layers will get access to private tables in case it's needed
Changes in MapConfigNamedLayersAdapter:
- It will retrieve the dbAuth params only if named layers are present so
there is no extra overhead for normal layers
- Rename queue function signature from `callback` to `done` so it is easier
to follow the code
Add several tests to validate `named` layers authentication
2015-02-04 11:30:36 +01:00
Raul Ochoa
58f9f5f7a8
Remove unused object, rename suite
2015-02-03 14:16:55 +01:00
Raul Ochoa
e4e633cf86
Fix next reference
2015-02-02 17:44:15 +01:00
Raul Ochoa
1bb0d8738e
Add test case for layers with private tables
2015-02-02 14:38:26 +01:00
Raul Ochoa
4949616c4e
Some acceptance tests, http_status = 403 should not happen in adapter,
...
needs improvement
2015-01-30 19:29:45 +01:00
Raul Ochoa
358b296750
Remove beforeEach and afterEach, in combination with suite they are
...
triggered for every single test even outside of the suite they were
invoked in.
2015-01-30 16:50:06 +01:00
Raul Ochoa
81f1b0dcf8
Adds tests for named maps surrogate keys and for invalidation
2015-01-26 15:02:28 +01:00
Raul Ochoa
0abd6a2293
Adds check for surrogate key headers in template instances
...
p.s. it fixes instantiate template with params test
2015-01-23 17:02:13 +01:00
Raul Ochoa
e8ab3a48c6
Removes TemplateMaps dependency on SignedMaps
...
- Token validation is done against the template
- Template is always extended with default values for auth and placeholders
- MapConfig is extended, in order to validate auth_toknes, with template info:
- template name
- template auth
- No more locks to create, update or delete templates
- Trusting in redis' hash semantics
- Some tradeoffs:
* A client having more templates than allowed by a race condition
between limit (HLEN) check and creation (HSET)
* Updating a template could happen while the deleting it, resulting in
in a new template
* Templates already instantiated will be accessible thrught their
layergroup so it is possible to continue requesting tiles/grids/etc.
- Authorization is now handled by template maps
2015-01-22 15:40:40 +01:00
Raul Ochoa
3f1aa9955b
Remove query tables api dependency from health check
2015-01-13 12:09:02 +01:00
Alejandro Martínez
96bcd14bb8
Remove PostgreSQL from health checks
...
This way the health checks will only check for Redis and Mapnik
initialization.
An empty tile without layers or datasources is generated.
2015-01-13 11:29:19 +01:00
Raul Ochoa
6c4bb59f06
First tests, not all ready. WIP
2014-11-05 15:42:28 +01:00
Raul Ochoa
c88330f5f2
Allow a different cache-control max-age for layergroup responses
2014-10-24 16:05:41 +02:00
Raul Ochoa
3b96f0d535
Starts using mapnik 2.3.x via windshaft upgrade
2014-09-24 15:54:13 +02:00
Raul Ochoa
965e1cd0c4
Supports !scale_denominator!
dynamic param in SQL queries
2014-08-22 10:16:39 +02:00
Raul Ochoa
50c8a2dc69
Defaults mapnik version for test
2014-08-18 14:48:45 +02:00
Raul Ochoa
6a8cff6fcd
Merge branch 'remove-mapnik-dependency'
...
Conflicts:
NEWS.md
2014-08-14 19:26:52 +02:00
Raul Ochoa
23a7684208
Removes mapnik dependency as it now relies on Windshaft to check mapnik version
2014-08-14 18:27:54 +02:00
Raul Ochoa
5cf79c82bb
Configurable QueryTablesAPI to call directly postgresql using cartodb-psql
...
or to keep using a request to the SQL API
2014-08-06 21:48:08 +02:00
Raul Ochoa
d1373bec66
Improves SQL query for affected tables and last updated time
2014-08-04 17:48:59 +02:00
Raul Ochoa
73d1db3bd2
CDB-3686 Adds support for per mil tolerance when comparing images as in Mac OS X some results from ImageMagick are a bit odd
2014-08-04 01:30:24 +02:00
Raul Ochoa
9b5921e8e1
CDB-3686 Fixes expected queries based on changes to request table names and last updated time in one request
2014-08-04 01:29:23 +02:00
Raul Ochoa
8a91b5cfb5
CDB-3256 Fixes test related to cache in templated layergroup creation
2014-06-24 16:05:54 +02:00
Raul Ochoa
2dd03e21e1
CDB-3256 fix test and adds a couple more of tests for testing the no-cache scenarios
2014-06-24 13:13:00 +02:00
Sandro Santilli
882ec65ba0
Use signer's map_key when contacting sql-api
...
Includes testcase.
Fixes #188
2014-04-08 09:44:49 +02:00
Sandro Santilli
312194228a
Stop duplicating global.environment as global.settings
2014-03-28 18:47:59 +01:00
Sandro Santilli
9e495b42ee
Do not cache non-success jsonp responses
...
Closes #186
Includes testcase
2014-03-21 13:58:20 +01:00
javi
5bfc360856
added serverMetadata option for layer group, close #182 CDB-1940
2014-03-06 15:19:12 +01:00
Sandro Santilli
ecc9ea1226
Use 403 for forbidden, not 401
...
Includes upgrade of windshaft to 0.19.3
Includes upgrade of redis-mpool to 0.0.4
2014-03-04 15:32:31 +01:00
Sandro Santilli
1741a20575
Do not cache map creation responses
...
Closes #176
CDB-1908 #resolve
CDB-1901 #resolve
Includes testcase
2014-03-04 10:46:15 +01:00
Sandro Santilli
30eb939dc7
Fix error message on missing requested signature
...
We don't really distinguish between missing or non-authorizing
signature. And that's fine. See #170
2014-03-03 18:14:17 +01:00
Sandro Santilli
40a254922a
Raise 403 forbidden on missing requested signature
...
Closes #170
Includes testcase
2014-03-03 18:06:39 +01:00
Sandro Santilli
bddc65a504
Forbid instanciating templates of foreign users
...
Closes #173
Includes testcase
2014-02-28 16:05:46 +01:00
Sandro Santilli
ddd2628c19
Fix database connection settings on template instanciation
...
Closes #174
Enhances testsuite to ensure test.js settings are read
2014-02-28 15:56:31 +01:00
Sandro Santilli
f46dc90035
Forbid using map signatures of foreign users
...
Closes #173
Includes testcase
2014-02-28 13:24:38 +01:00
Sandro Santilli
73276b1003
Upgrade windshaft to 0.19.2
...
Fixes obscure "ECONNREFUSED" error message (closes #171 )
Change some http status responses to be more appropriate to the case
2014-02-28 10:54:18 +01:00
Sandro Santilli
eec9933fb8
Accept a slightly different error message on timeout
...
Node 0.10 uses ESOCKETTIMEDOUT while 0.8 uses ETIMEDOUT
See http://travis-ci.org/CartoDB/Windshaft-cartodb/builds/19722727
2014-02-27 13:37:44 +01:00
Sandro Santilli
f284362988
Reduce sql-api communication timeout, and allow overriding it
...
Introduces new sqlapi.timeout directive, defaults to 100 ms
Includes testcase.
Closes #167
2014-02-27 10:33:32 +01:00
Sandro Santilli
4064b8f254
Add test for lack of X-Cache-Channel in response to root request
2014-02-24 16:24:01 +01:00
Sandro Santilli
8e68716d16
Give more info on failure
2014-02-21 16:56:50 +01:00