diff --git a/.gitignore b/.gitignore index e43b0f9..a108123 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,5 @@ .DS_Store +src/pg/observatory--current--dev.sql +src/pg/observatory--dev--current.sql +src/pg/observatory--dev.sql +src/pg/test/results/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1c3c8c2..e951e91 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,6 @@ # Development process -Please read the Working Process/Quickstart Guide in [[README.md]] first. +Please read the Working Process/Quickstart Guide in [README.md](README.md) first. For any modification of the observatory-extension, such as adding new features, refactoring or bug-fixing, a topic branch must be created out of the `develop` @@ -27,9 +27,10 @@ make it available to PostgreSQL. Run the tests with `make test`. Update extension in a working database with: - -* `ALTER EXTENSION observatory VERSION TO 'current';` - `ALTER EXTENSION observatory VERSION TO 'dev';` +``` +ALTER EXTENSION observatory VERSION TO 'current'; +ALTER EXTENSION observatory VERSION TO 'dev'; +``` Note: we keep the current development version install as 'dev' always; we update through the 'current' alias to allow changing the extension @@ -58,7 +59,6 @@ to the release process for a new revision of the extension. ## Relevant development tasks available in the Makefile -``` * `make help` show a short description of the available targets * `sudo make install` will generate the extension scripts for the development @@ -67,4 +67,3 @@ to the release process for a new revision of the extension. * `make test` will run the tests for the installed development extension. Intended for use by developers. -``` diff --git a/README.md b/README.md index cec3000..efe8b8b 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,21 @@ # Observatory extension -CartoDB extension that implements the functions needed by the Observatory Service. +CartoDB extension that implements the row-level functions needed by the Observatory Service. ## Code organization -* *doc* documentation -* *src* source code -* - *src/pg* contains the PostgreSQL extension source code -* *release* reseleased versions +``` +. +├── doc # documentation +├── release # released versions +└── src # source code + └── pg + ├── sql + └── test + ├── expected + ├── fixtures + └── sql +``` # Development workflow @@ -36,7 +44,7 @@ and developers must not commit or merge into it. ## Development Guidelines For a detailed description of the development process please see -the [[CONTRIBUTING.md]] guide. +the [CONTRIBUTING.md](CONTRIBUTING.md) guide. Any modification to the source code shall always be done in a topic branch created from the `develop` branch. @@ -44,9 +52,7 @@ shall always be done in a topic branch created from the `develop` branch. Tests, documentation and peer code reviews are required for all modifications. -The tests (both for SQL and Python) are executed by running, -from the top directory: - +The tests are executed by running this from the top directory: ``` sudo make install make test @@ -54,5 +60,5 @@ make test ## Release The release and deployment process is described in the -[[RELEASE.md]] guide and it is the responsibility of the designated +[RELEASE.md](RELEASE.md) guide and it is the responsibility of the designated release manager. diff --git a/RELEASE.md b/RELEASE.md index f13a660..cc2a79e 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,7 +1,7 @@ # Release & Deployment Process -Please read the Working Process/Quickstart Guide in [README.md]] -and the Development guidelines in [[CONTRIBUTING.md]]. +Please read the Working Process/Quickstart Guide in [README.md](README.md) +and the Development guidelines in [CONTRIBUTING.md](CONTRIBUTING.md). The release process of a new version of the extension shall be performed by the designated *Release Manager*. @@ -15,9 +15,7 @@ To do so [Semantic Versioning 2.0](http://semver.org/) is in order. Thew `NEWS.md` will be updated. The next command must be executed to produce the main installation -script for the new release, `release/observatory--X.Y.Z.sql` and -also to copy the python package to `release/python/X.Y.Z/observatory`. - +script for the new release, `release/observatory--X.Y.Z.sql`: ``` make release ``` @@ -50,7 +48,6 @@ sudo make deploy RELEASE_VERSION=X.Y.Z ## Relevant release & deployment tasks available in the Makefile -``` * `make help` show a short description of the available targets * `make release` will generate a new release (version number defined in @@ -58,12 +55,10 @@ sudo make deploy RELEASE_VERSION=X.Y.Z Intended for use by the release manager. * `sudo make deploy` will install the current release X.Y.Z from the - `release/` files into PostgreSQL and a Python virtual environment - `envs/X.Y.Z`. + `release/` files into PostgreSQL. Intended for use by the release manager and deployment jobs. * `sudo make deploy RELEASE_VERSION=X.Y.Z` will install specified version previously generated in `release/` - into PostgreSQL and a Python virtual environment `envs/X.Y.Z`. - Intended for use by the release manager and deployment jobs. -``` + into PostgreSQL. + Intended to be used by the release manager and deployment jobs.