path: root/server
AgeCommit message (Collapse)Author
2018-08-09Only request a reason from the client if the server requires itNiall Sheridan
2018-08-09Remove gRPCNiall Sheridan
This hasn't been enabled in a while due to gRPC limitations
2018-08-08Misc fixesNiall Sheridan
- Add `fast_finish` to travis config - Specify that Go 1.9 is supported - Additional error checking which was previously missed - Make the migrations test better -
2018-08-08Change the primary key on the issued_certs tableNiall Sheridan
In retrospect a primary key that has no relation to the certificate is preferred to using the certificate KeyID. The KeyID is also very large for a primary index. This is a moderately tricky migration, especially for SQLite which has no means of altering the table in this fashion - it involves creating the new table and copying the data. Order of commands also matters - index names are global in SQLite, so the `idx_expires_at` index needs to be created at the correct stages. For MySQL migration the necessary steps are run as a single alter statement to minimise the risk of leaving the migration in an incomplete state if anything aborts. When tested on a table with 250,000 rows (MySQL 5.7) the migration took 3 seconds to complete. As certificates will be requested infrequently the risk of prolonged locking is minimal.
2018-08-07Drop unneeded index idx_revoked_expires_atNiall Sheridan
2018-08-07Add migrations testsNiall Sheridan
2018-08-07Updates to static content generation, docs and examplesNiall Sheridan
Static content generator finds the root of the git repo and executes from there. Packr will scan subdirs for boxes to be packed.
2018-08-07Move StringSlice into the store packageNiall Sheridan
2018-08-07Unexport store implementationsNiall Sheridan
Return an error if the store isn't known, instead of defaulting to a mem store
2018-08-07Remove obsolete db seed scriptNiall Sheridan
2018-08-07Manage db schema with rubenv/sql-migrateNiall Sheridan
It's currently hard to make changes to the database schema. Use sql-migrate to make incremental changes. Stop hard-coding the database name (the default is still "certs" for backward-compatibility) The `automigrate()` function will automatically run pending migrations. Use a different migration directory per database driver. This carries a cost of duplication, but is easier than creating migrations which will cleanly execute in both SQLite and MySQL. Migrations are shipped using the packr utility.
2018-08-01Migrate from esc to packr for static filesNiall Sheridan
2018-06-20use mysql.NewConfig() to set defaults correctlyNiall Sheridan
2017-10-19Warn when not using a persistent datastoreNiall Sheridan
2017-10-18Update dependenciesNiall Sheridan
2017-10-17 Support a message to be passed and logged from client to server (#67)Bob Long
* Support a message to be passed and logged from client to server
2017-06-17Disable grpc multiplexerNiall Sheridan
2017-06-17Set the textarea heightNiall Sheridan
2017-04-15Revoke multiple certs in a single callNiall Sheridan
2017-04-10enable race detectionNiall Sheridan
2017-04-10remove calls to t.Parallel()Niall Sheridan
2017-04-10update dependenciesNiall Sheridan
2017-04-10add a healthcheck handlerNiall Sheridan
2017-04-10obtain the username before revoking the tokenNiall Sheridan
2017-04-10Add comment for exported methodNiall Sheridan
2017-04-10override the json marshaller's time formatNiall Sheridan
2017-04-10fix behaviour of SQLStore.ListNiall Sheridan
2017-04-10Populate all fields during testNiall Sheridan
2017-02-20Split the servers out of mainNiall Sheridan
2017-02-19Add grpc signerNiall Sheridan
2017-02-12Initial pass at prometheus support. (#56)Kevin Lyda
2017-02-11Revert "Remove the oauth_callback_url config option"Niall Sheridan
2017-02-09Remove the oauth_callback_url config optionNiall Sheridan
Infer the redirect url from the request instead
2017-01-27Remove datastoreKevin Lyda
2017-01-27Remove DatastoreConversion testNiall Sheridan
It's going away
2017-01-27Remove mongo supportKevin Lyda
Resolves #40
2017-01-27Reduce the font sizeNiall Sheridan
Google tokens grew in length and on smaller screens the token doesn't fix within the visible textarea
2017-01-25Return a concrete typeNiall Sheridan
2017-01-25Remove newClient function (and calls).Kevin Lyda
2017-01-25Code cleanup.Kevin Lyda
Use ParseBool instead of writing it on own. Use c.newClient(token) to get an http client.
2017-01-25Create a gitlab auth source.Kevin Lyda
Defaults to public gitlab.com, but easily redirected to self-hosted installation.
2017-01-25Switch to scl, an extension of hclNiall Sheridan
2017-01-24Log the datastore warning as a single lineNiall Sheridan
2017-01-22Switch from database/sql to sqlxNiall Sheridan
2017-01-16Update authprovider testsNiall Sheridan
2017-01-15Add more context to errorsNiall Sheridan
2017-01-15Make CertStorer implementations publicNiall Sheridan
2017-01-14Add critical options supportNiall Sheridan
2017-01-13Use wkfs to manage the lets encrypt cacheNiall Sheridan
2017-01-13Db test config (#43)Kevin Lyda
* Allow tests to specify mysql connection info. User can set MYSQL_TEST_USER, MYSQL_TEST_PASS and MYSQL_TEST_HOST environment variables for test environments that need that. * Changes from testing. Need to set both time fields as '0000-00-00' depends on a feature deprecated in MySQL 5.7.4. Go lint wanted snake case for my sql_config var. sqlConfig it is. * Go go idioms. Based on feedback from Niall, a cleaner way to do this in Go.