Initial commit with what I think we need
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
# Observatory extension
|
||||
|
||||
CartoDB extension that implements the functions needed by the Observatory Service.
|
||||
|
||||
## Code organization
|
||||
|
||||
* *doc* documentation
|
||||
* *src* source code
|
||||
* - *src/pg* contains the PostgreSQL extension source code
|
||||
* *release* reseleased versions
|
||||
|
||||
# Development workflow
|
||||
|
||||
We distinguish two roles regarding the development cycle:
|
||||
|
||||
* *developers* will implement new functionality and bugfixes into
|
||||
the codebase and will request for new releases of the extension.
|
||||
* A *release manager* will attend these requests and will handle
|
||||
the release process. The release process is sequential:
|
||||
no concurrent releases will ever be in the works.
|
||||
|
||||
We use the default `develop` branch as the basis for development.
|
||||
The `master` branch is used to merge and tag releases to be
|
||||
deployed in production.
|
||||
|
||||
Developers shall create a new topic branch from `develop` for any new feature
|
||||
or bugfix and commit their changes to it and eventually merge back into
|
||||
the `develop` branch. When a new release is required a Pull Request
|
||||
will be open against the `develop` branch.
|
||||
|
||||
The `develop` pull requests will be handled by the release manage,
|
||||
who will merge into master where new releases are prepared and tagged.
|
||||
The `master` branch is the sole responsibility of the release masters
|
||||
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.
|
||||
|
||||
Any modification to the source code
|
||||
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:
|
||||
|
||||
```
|
||||
sudo make install
|
||||
make test
|
||||
```
|
||||
## Release
|
||||
|
||||
The release and deployment process is described in the
|
||||
[[RELEASE.md]] guide and it is the responsibility of the designated
|
||||
release manager.
|
||||
Reference in New Issue
Block a user