* snapshot feature ** product: vm-snapshot ** flow *** list all my VMs **** get the uuid of the VM I want to take a snapshot of *** request a snapshot ``` vmuuid=$(http nicocustomer http -a nicocustomer:xxx http://uncloud.ch/vm/create_snapshot uuid= password=... ``` * steps ** DONE authenticate via ldap CLOSED: [2020-02-20 Thu 19:05] ** DONE Make classes / views require authentication CLOSED: [2020-02-20 Thu 19:05] ** TODO register credit card *** TODO find out what saving with us *** Info **** should not be fully saved in the DB **** model needs to be a bit different * Decide where to save sensitive data ** stripe access key, etc. * python requirements (nicohack202002) django djangorestframework django-auth-ldap stripe * os package requirements (alpine) openldap-dev * VPN case ** put on /orders with uuid ** register cc * CC ** TODO check whether we can register or not at stripe * membership ** required for "smaller" / "shorter" products * TODO Membership missing * Flows to be implemented - see https://redmine.ungleich.ch/issues/7609 ** Membership *** 5 CHF ** Django Hosting *** One time payment 35 CHF *** Monthly payment depends on VM size *** Parameters: same as IPv6 only VM ** IPv6 VPN *** Parameters: none *** Is for free if the customer has an active VM ** IPv6 only VM *** Parameters: cores, ram, os_disk_size, OS * Django rest framework ** viewset: .list and .create ** view: .get .post * TODO register CC * TODO list products * ahmed ** schemas *** field: is_valid? - used by schemas *** definition of a "schema" * penguin pay ## How to place a order with penguin pay ### Requirements * An ungleich account - can be registered for free on https://account.ungleich.ch * httpie installed (provides the http command) ## Get a membership ## Registering a payment method To be able to pay for the membership, you will need to register a credit card or apply for payment on bill (TO BE IMPLEMENTED). ### Register credit card ``` http POST https://api.ungleich.ch/membership \ username=nico password=yourpassword \ cc_number=.. \ cc_ ``` ### Request payment via bill ## Create the membership ``` http POST https://api.ungleich.ch/membership username=nico password=yourpassword ``` ## List available products