aptible / dashboard.aptible.com Goto Github PK
View Code? Open in Web Editor NEWDEPRECATED - Ember.js dashboard for the Aptible PaaS
Home Page: https://dashboard.aptible.com
License: MIT License
DEPRECATED - Ember.js dashboard for the Aptible PaaS
Home Page: https://dashboard.aptible.com
License: MIT License
refs #51
If you navigate away from Stack#show and then click the back button, you are not returned to Stack#show.
This ticket audits our use of operations to ensure we are using them correctly across the board.
If they visit first-app or payment-info but already have a stack
We should guarantee uniqueness of the following fields during signup flow. Ideally this validation can happen in context and should prevent a user from Next
ing until they are addressed.
also
Currently we don't catch stack, app, or DB validation errors until the payment method step, which is confusing.
link to from databases or apps indexes
Per: #51
The API will return pagination info for collection resources (see https://github.com/aptible/api.aptible.com/pull/146). Diesel should use these to display pagination links, starting with the apps/:id/operations and
and databases/:id/operations
history pages.
Refs #28.
Diesel needs to read the roles for a user and permissions for a stack and use those to determine whether to show certain UI elements like the "create app" and "create database" links.
For the moment it should be sufficient to determine on a per-stack basis whether a user has the "manage" permission or not. The "read" permission is implied by the fact that the API returned the stack at all, and the "manage" permission is the only current permission that is required to be able to create/edit stacks, apps and databases.
See https://github.com/aptible/api.aptible.com/issues/144 for more on permissions and how they will change in the future.
A (probably) incomplete list of places in the UI where elements are conditionally shown based on the manage permission:
display services, links for "operations" (audit trail) and deprovision.
If possible: add ability to edit services (scale containers, add vhosts)
from #20
There's a known bug in ember-data 14.1 that affects us, but when that is fixed this branch should be ready to merge.
Diesel is on 1.0.0-beta.12 now
The delete button on the app vhost index page is not implemented.
It should be implemented to delete the vhost, or removed.
from #20
There's an 'edit' link on a vhost (domain) show page, but no route/template for editing yet.
@sandersonet Any important difference between an "add domain" page (shown below) and an "edit domain" page? Anything that should not be changeable when editing an existing domain?
Account on-boarding flow requires some Auth rework as we will have to move our Stripe integration from dashboard.aptible.com to auth.aptible.com.
#43 creates client-side validations for organization names. These should be expanded to check the server for an existing organization name.
After discussion with @fancyremarker we shouldn't DELETE /log_drains/:log_drain_id
from diesel directly. Better to use a deprovision operation like we do when deprovisioning apps and dbs. The UI may need to change to avoid displaying deprovisioned log drains (treating them as though they are deleted).
refs #98
from #51
${organization.name} ${stack.type}
format-date
helper. See also #87)When the existing dashboard creates a new database, it also creates a disk (by queueing a provision operation) if the db creation succeeds.
Need to update diesel to do the same thing.
cc @fancyremarker Does that sound right to you? Or should the API be modified to accept a disk_size
along with a POST to create a new db, and have the API handle both in the same action?
refs #28
These are of type operation and image, respectively, and are embedded by HAL.
The HAL adapter needs to be updated to handle embedded properties that have a different name (eg 'last_deploy_operation') than their type (eg 'operation').
When creating a new App (or DB), a new record is created immediately when the route loads. If I then browse to another route and come back to apps/index, I see my unsaved app in the collection of other apps.
Unsaved resources should be immediately destroyed when the route exits and should not be accessible from any index pages.
Implement the existing dashboard settings routes settings/ssh
and settings/admin
refs #51
They look like this in dashboard now:
from #112
When diesel creates a new vhost it should also create a new operation of type 'provision' for that vhost.
The user
model has password
and email
attrs and so ember data sends along these parameters to Auth via a PUT
request. Auth expects PATCH
requests with only the changing parameters, and in particular it doesn't like having password
and email
sent as parameters if they are not intended to be changed.
There's a pending PR in Auth that makes it accept PUT
requests and tolerant of the inclusion of password
and email
parameters even if they are not changing.
After that PR is merged, auth should be able to accept a request like the one ember data sends, which looks like:
# PUT /users/:id
{
name: 'new name',
password: null,
email: 'same-email-the-user-already-has'
}
When that is merged and #68 is merged, this issue will likely be fixed because #68 adds code that make the PUT
request as described above.
from #51
Add a "logging" tab for a page that shows a list of logs, like so:
And a "new log" page that allows a user to create a new log drain, like so:
If you visit app#vhosts and the app currently has no vhosts, the route isn't fully loaded. This leaves other items in the nav with the ember-transitioning-out
class. Ideally the route should fully resolve with a simple message like 'This app has no Domains.'
Handles should be limited to lowercase, alphanumerics, -, and _
Handles should match FORMAT = /\A[0-9a-z._-]{1,64}\z/
from #20
/organizations/new
in dashboardNow that https://github.com/aptible/api.aptible.com/issues/149 has merged we should be able to app.get('vhosts')
directly rather than retrieving them through the app's services as we do now.
from #51
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.