Jump to: navigation, search

Difference between revisions of "Solum/HighLevelRoadmap"

(Milestone: Kilo)
(Solum Roadmap)
Line 52: Line 52:
 
  - on private repos I want all GitHub collaborators on the repo to have access to the test logs. For public repos, I want the public to have access to the test logs.
 
  - on private repos I want all GitHub collaborators on the repo to have access to the test logs. For public repos, I want the public to have access to the test logs.
  
=== '''Milestone 2015.1''' ===
+
=== Future milestones ===
* .Net support (via Mono)
 
 
* Service Add-on framework
 
* Service Add-on framework
* Enable following services via the Add-on framework: MongoDB, NewRelic, Trove, MemCache
+
* Enable following services via the Add-on framework: MongoDB, NewRelic, MemCache
 
* Application performance monitoring (CPU, memory utilization, etc.)
 
* Application performance monitoring (CPU, memory utilization, etc.)
 
* Manual scaling
 
* Manual scaling
* Dense packing
 
* Application Isolation
 
* Complete application deployment and management API + CLI listed @ https://wiki.openstack.org/wiki/Solum/FeatureBlueprints/ApplicationDeploymentAndManagement
 
 
=== '''Milestone 2015.1.2''' ===
 
* Auto scaling
 
* Self-healing
 
 
* Custom SSL Certificates
 
* Custom SSL Certificates
* Container Sleep/Wake
 
* Blue/green deployments
 
 
=== '''Milestone 2015.1.3''' ===
 
* Environments (Dev, Test, Prod, custom)
 
** Application Lifecycle Management (promote code from dev to test to prod)
 
* SDK for interfacing with the PaaS REST API
 
* Roles and privileges
 
 
 
=== '''Milestone 2015.2''' ===
 
* Non-web workloads (Background and scheduled jobs)
 
* HA via distributed placement of load balanced set of code container instances
 
* Network isolation - dedicated private network for applications
 
* IDE Plugins for Eclipse, IntelliJ, JBoss Studio, Komodo
 
* Integration with online IDE
 
* Online developer sandbox
 
* Additional services
 

Revision as of 19:56, 4 February 2015

System Overview

SolumOverview.png

Program Scope

For developers: Provide an easy to use, fast experience developing applications for OpenStack , by providing an automated CI/CD pipeline.

For release managers: Provide streamlined application lifetime management via Environments (dev,test,staging,prod), permissions(I.e. who can deploy to prod),what tests get run in which environment, usage/cost information per environment, etc

The program vision consists of the following 4 items-

1. CI: Source to image (continuous integration pipeline)

 - GIT, build+unit test, generate image, run functional tests, persist image for deployment via Heat

2. CD

 - automated deployment, management of running apps(monitoring, autoscaling, self-healing), blue green deployments, application versioning and rollbacks

3. Environments

 - permissions(I.e. who can deploy to prod),what tests get run in which environment, usage/cost information per environment, etc

4. Developer tooling

 - IDE plugins, SDK's, CLI, UI console

TBD: Work in Progress

Solum Roadmap

Previous milestones

  • SOLUM-R1: Application deployment/management [R1.1 (Story 1 and 2 only), R1.2, R1.3]
  • SOLUM-R4: User Authentication
  • Blueprints: https://launchpad.net/solum/+milestone/milestone-1
  • Reliability improvements: bug fixes
  • Ability to configure unit tests to be run as part of CI pipeline
  • Retry on failures: as an application developer, if the CI invocation faiIs due to any reason, I would be able to trigger rerun of the CI workflow without resubmitting the code.

Milestone: Kilo

  • Custom Language Pack
- As an operator, I can codify setup of custom language stack, and make it available to application developers so that they can start using the custom stack for CI+CD (build, run tests, generate DU). 
- as an application developer, I can codify setup of my custom language stack, and have Solum use my custom stack for CI+CD. 
  • Implement Python language pack + sample app
  • Implement Java Tomcat 7 language pack + sample app
  • Implement Ruby on rails language pack + sample app
  • Demonstrate MySQL Trove integration with an app deployed on Solum
  • Access to logs : as an application developer, I would be able to access build, test and deployment logs for my apps on Solum.
- I want my logs to be accessible only to me
- I want to be able to view summary log data (build pass/pail, test pass/fail, number of tests passed/failed etc)
- I want to view my logs scoped to individual pull requests 
- I want to be able to drill down into detail logs
- I would like to see user friendly logs i.e. logs meant to be consumed by an app developer persona
- on private repos I want all GitHub collaborators on the repo to have access to the test logs. For public repos, I want the public to have access to the test logs.

Future milestones

  • Service Add-on framework
  • Enable following services via the Add-on framework: MongoDB, NewRelic, MemCache
  • Application performance monitoring (CPU, memory utilization, etc.)
  • Manual scaling
  • Custom SSL Certificates