We need a few things in order to support Oracle:
- Development:
- kernel: There are a few places we parse database "dsn", these needs to understand oci8 dsn as well
- Or better yet find a way to get rid of it and let doctrine parse this so we can support full doctrine dsn as used by Symfony flex
- Oracle schema, need someone with Oracle expertise involved to see what we can optimize in the schema
- Estimate 1-2 weeks (but you need step below to be able to verify)
- CI: Continues Integration, aka testing of every change, this is the more tricky part. in short oracle does not allow CI services to provide Oracle as an option so we have two options:
- A: Setup testing of this on Jenkins and buy a license
- B: Just test Platform (not commercial revenue generating software) by using Oracle Express Edition
- Estimate 2-5 days (needed to verify development)
At this point Oracle will be "experimentally" / Community supported, and customers can use it as long as they have a partner willing to take some responsibility of providing patches back to eZ Platform kernel if they find bugs.
- QA: we need a license for Oracle and we need 2-3 weeks setting it up and running true QA test suite as well as the tests in CI
- Estimate 2-3 weeks (needed to offically support oracle, will once supported need to be tested for each release slowing down releases)
Besides that there is doc, orginizing it, marketing material updates, ....
Important: Ideally Oracle support should not be added before we have a Installer, and a upgrade system that supports several databases. Otherwise support will be second class like postgress support has become right now (not possible to install for clean installs, only unoffical upgrade path), and handling schmea changes will be time consuming until we get around to use schema tools in Doctrine for this.
Somewhat tricky, theoretically the following guides should help:
- server: https://github.com/cbandy/travis-oracle
- php oci8: https://gist.github.com/tassoevan/10392954
See script below for quick untested compilation of this.
Note: We have a developer account setup with ezrobot mail on oracle.com that can be used to download the software.