1. 29 Jan, 2024 40 commits
    • Romain Courteaud's avatar
      slapos_erp5: drop slap_add_ticket page · c62b4ef0
      Romain Courteaud authored
      c62b4ef0
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
      slapos_erp5: · 6fb1f7de
      Romain Courteaud authored
      * drop slap_ticket_list page
      * configure security on ticket modules
      * provide read only access to all Service
      6fb1f7de
    • Romain Courteaud's avatar
      slapos_jio: drop slap_ticket_list page · 1793c751
      Romain Courteaud authored
      1793c751
    • Romain Courteaud's avatar
      7eba321d
    • Romain Courteaud's avatar
      1fd1e641
    • Romain Courteaud's avatar
      slapos_erp5: · 7a055bdc
      Romain Courteaud authored
      * drop slap_compute_node_revoke_certificate page
      * drop compute_node_request_certificate page
      7a055bdc
    • Romain Courteaud's avatar
      slapos_jio: · c7e38ddb
      Romain Courteaud authored
      * drop slap_compute_node_revoke_certificate page
      * drop compute_node_request_certificate page
      * drop not implemented update_allocation_scope action on compute node
      * drop not implemented update_category action on compute node
      c7e38ddb
    • Romain Courteaud's avatar
      2f118856
    • Romain Courteaud's avatar
      slapos_erp5: · 056125d1
      Romain Courteaud authored
      * slapos member user are not allowed anymore to create compute node
      * no need to create a dedicated local_roles from compute node source_administration
        Only slapos manager will handle compute nodes
      * duplicate test_default_scenario to happily break it
      * drop friend/personal in new scenario test
      * all members can allocation on all compute nodes
      * give user security group based on function (to access some module) and project/function (to access documents)
      * only a project computer manager can create compute nodes
      * only project computer manager is assignor on compute node
      * need a project assignment to create a compute node
      * drop group security on Instance Tree
      * drop group security from Software Instance
      * project member only need Auditor role on it
      * add customer project assignment
      * remove source_administration interaction workflow on Compute Node and add follow_up instead
      * Software Installation: move interaction workflow from destination_section to follow_up
      * give role on Software Installation to Project Compute Node Manager
      * shadow user do not need access to Compute Node anymore
      * only project comp manager can create SOftware Installation
      * project customer can create software instance
      * project customer can create instance tree
      * project people can only view the project module
      * also check PAS plugins which are not supposed to be activated
      * drop PAS shadow user plugins
      * drop shadow access from compute node module
      * drop shadow from compute node module
      * drop shadow role from computer module
      * drop shadow role from person* portal types
      * drop shadow role on project module
      * Revert "slapos_erp5: drop PAS shadow user plugins"
        Needed for accounting
      * Revert "slapos_erp5: drop shadow role from person* portal types"
      * drop Modification permissions if document uses an automated ledger
      * source_administration is not used anymore on Compute Node
      * drop transfer from another Project
      * drop allocation_scope/open categories
      * drop Item_getSecurityCategoryFromMovementDestinationSection
      * drop Item_getSecurityCategoryFromMovementDestinationSection
      * drop Item_getSecurityCategoryFromMovementDestinationProject
      * drop Item_getSecurityCategoryFromMovementDestination
      * drop SoftwareInstance_getSecurityCategoryFromMovementSpecialiseDestinationProject
      * drop ERP5Type_getSecurityCategoryFromAssignmentDestinationClientOrganisation
      * switch event/ticket roles to virtual master security
      * drop Event_getSecurityCategoryFromMovementFollowUpAggregateComputeNodeDestinationSection
      * drop Event_getSecurityCategoryFromMovementFollowUpAggregateDestination
      * delete Event_getSecurityCategoryFromMovementFollowUpAggregateDestinationProject
      * drop Item_getSecurityCategoryFromMovementAggregateDestinationProject
      * drop Item_getSecurityCategoryFromMovementAggregateDestinationSection
      * drop Item_getSecurityCategoryFromMovementAggregateDestination
      * drop Item_getSecurityCategoryFromMovementAggregateComputeNodeDestinationSection
      * drop SoftwareInstance_getSecurityCategoryFromMovementSpecialiseDestination
      * drop Item_getSecurityCategoryFromMovementLineAggregateDestinationProject
      * drop Item_getSecurityCategoryFromMovementLineAggregateDestination
      * drop Item_getSecurityCategoryFromMovementLineAggregateComputeNodeDestinationSection
      * provide access to Compute Node Manager on Upgrade Decision
      * delivery/movement must use source_project instead of follow_up
      * delivery/movement must use source_project instead of follow_up
      * drop query module security
      * drop Compute Partition roles
        It must be visible by all project members
      * instance of the project can access compute nodes
      * do not make Credit Card readable
      * drop data set security
      * only accountant can create/update Account
      * add function local_role_group
      * use function local_role_group on Account
      * use function local_role_group on account
      * only accountant can read/write accounting transactions.
        Ledger is used as write condition
      * accounting period are only readable/writable by accountant
      * accounting period are only readable/writable by accountant
      * provide access on compute node to project customer/production
      * give read access to project production
      * provide access to production on software installation
      * switch admin to production manager in tests
      * no need for group/role in assignment. Use parent function too
      * provide access to function/production on Instance Tree
      * provide access to instance for function/production users
      * provide access to function/production* on support request
      * provide access to function/production on event module
      * provide access to regularisation request to function/production
      * drop roles for DMS portal types
        It does not seem used.
      * provide read/write access to function/production to Computer Network
      * provide access to function/is to System Event
      * provide access to function/is on Assignment
      * provide access to person module
      * provide read only access to project/customer on software product
      * provide readonly access to project/customer on software release
      * test set server allocation_scope to open
      * provide readonly access for project/customer on accounting module
      * provide readonly access for project/customer on compute node module
      * use source/destination_project on event/ticket/delivery
      * security for Subscription Request
      * production agent/manager can not create Software Instance
      *  drop slap_add_compute_node page
      * drop slap_project_list page
      * drop  drop slap_transfer_compute_node (and project_view)
      * drop slap_compute_node_view page
      056125d1
    • Romain Courteaud's avatar
      slapos_jio: · 6b28c897
      Romain Courteaud authored
      * drop slap_add_compute_node page
      * drop slap_project_list page
      * change status gadget to support parameter configured on the gadget field
      * drop slap_project_view page
      * drop slap_transfer_compute_node
      6b28c897
    • Romain Courteaud's avatar
      slapos_cloud: · ae6c5589
      Romain Courteaud authored
      * SlapOSVirtualMasterSourceProjectConstraint requires source_project or destination_project
      * really check source/destination_project...
      * set compute node default allocation scope to open by default
      * ensure created Support Request is linked to a Project
      * drop request_destroy action
      * disable action if instance tree already has the expected state
      * move instance action to slapos_panel
      ae6c5589
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
      slapos_cloud: · 4fea8805
      Romain Courteaud authored
      * drop ComputerNetwork_getSoftwareReleaseAllocableState
        source_administration is not used anymore on Compute Node
      * source_administration is not used anymore on Compute Node
      * drop transfer from another Project
      * drop transfer from another Project
      * drop transfer from another Project
      * drop transfer from another Project
      * drop allocation_scope/open categories
      * drop allocation_scope/open categories
      * move test function to mixin
      * drop ERP5Type_getSecurityCategoryFromAssignmentDestinationClientOrganisation
      * add SlapOSVirtualMasterSourceProjectConstraint
      * force source_project accessors when using SlapOSVirtualMasterSourceProjectConstraint
      * use instance/computer project in the security mapping
      * test use production/manager to request compute node
      * allocation_scope/open/public and friend do not exist anymore
      * only allocate on allocation_scope/open
      * only allocate on allocation_scope/open
      4fea8805
    • Romain Courteaud's avatar
      slapos_payzen: · 0e4432f8
      Romain Courteaud authored
      * propagate ledger from order builder
      * add ledger to the accounting template
      * aggregate source_project on payment
      0e4432f8
    • Romain Courteaud's avatar
      slapos_subscription_request: · 8a8e6fc2
      Romain Courteaud authored
      * subscription scenario needs project now
      * project is needed when requesting an instance
      * hardcode automated ledger category for the newly created sale packing list
      * hardcode automated ledger category for the newly created accounting transactions
      * automated ledger path
      * add ledger to the accounting template
      * only add a project assignment for the existing admin user
      * create normal user with the project customer assignment
      * update cdn subscription test
        project reference needed
      * add project for chinese subscription
      * project needed for scenario tests
      * all Subscription/Trial object must be linked to a Project
      * test: user need to be linked to a project
      * propagate source project
      * delivery/movement must use source_project instead of follow_up
      * set source_project on event
      * delivery/movement must use source_project instead of follow_up
      * use source_project instead of follow_up
      * use source_project instead of follow_up
      * test set server allocation_scope/open
      * Subscription COndition uses follow_up to link to the Project
      * add missing source_project base category on Subscription Request
        XXX Subscription Request must inherit this from ticket instead of defining all of this manually
      * Subscription COndition uses follow to link to Project
      * also add destination_project on Subscription Request to ensure constraint can be triggered
      * fix user account assignment creation from SubscriptionRequest
      * create software product/release in test
      * improve software product/release
      * expect Sale Packing List to use a Software Product
      * use Software Product as resource
      * drop audit from Subscription Request
      8a8e6fc2
    • Romain Courteaud's avatar
      slapos_accounting: · 112a2c74
      Romain Courteaud authored
      * add SlapOSLedgerConstraint
      * add SlapOSLedgerConstraint on all * Transaction
        XXX FOrces tests to fail as much as possible if ledger is not configured.
        Add test to ensure constraint is configured
      * hardcode automated ledger category for the newly created sale packing list
      * propagate ledger in the simulation tree
      * build ledger category from delivery builders
      * aggregate ledger from order builder
      * ensure ledger category is allowed on the portal type when using the constraint
      * requires ledger on Hosting Subscription, Open Sale Order and Sale Packing List
      * hardcode ledger value on Open Sale Order and Hosting Subscription
      * open order must propagate the ledger value
      * automated ledger path
      * add ledger to the accounting template
      * source_administration is not used anymore on Compute Node
      * source_administration is not used anymore on Compute Node
      * add source_project constraint on all portal type requiring a ledger
      * set the source_project on the open sale order
      * propagate source_project in the simulation/builder
      * remove source_project constraint from the ledger property sheet
      * add SlapOSVirtualMasterSourceProjectConstraint on all accounting portal types
      * use Software Product instead of the service slapos_instance_subscription
      * build movement using Software Product
      * consider Software Product as a Service
      * use Software Product
      * search the trade condition with searchPredicateList
      * ensure trade condition is found
      * disable open order alarm
      * disable open order creation
      * add slapos_virtual_master_subscription service
      * allow using open order for different kind of item
      * add constraint to check if open order has a sale trade condition
      * reactivate open order alarm
      * check if Sale Trade Condition has a business process
      * ensure open order line has a resource, price, quantity
      * new constraints for open order / sale trade condition
      * only automate invoice with automated ledger
      * only automate packing list with automated ledger
      * only automate packing list with automated ledger
      * only automate packing list with automated ledger
      * add new business process to go from order to invoice
        This may be temporary.
        Name is bad on purpose for now.
      * not sure if it is a good idea to hardcode the business process list...
      * do not crash if open order line is not linked to an instance
      * force total_quantity to be > 0 instead of checking quantity property
      * XXX support Open Order Cell
      * XXX constraint must also support Cell
      * create Open Order Cell
      * first version to fetch trade conditions and prices
      * select the correct software release/type on open order
      * get price from sale supply
      * do not create the open order if the software product can not be found
      * set price on the open order
        it requires to create a temp sale order, where sale supply is automatically applied
      * SlapOSVirtualMasterSourceProjectConstraint on Sale Supply
      * InstanceTree_getSoftwareProduct also return release and type variations
      * wip sale supply test
      * configure Sale Supply predicate
      * test Supply Line matching and getPrice
      * allow Supply Line to define price even if resource has variations
        Force quantity unit to match (no convertion for now)
      * order Supply Predicate matching
      * Supply Cell before Line
      * stop hardcoding default quantity unit
      * add comment if price not found
      * quantity is defined on cell
      * do not create Hosting Subscript before the price is found
      * slapos_accounting: link Hosting Subscription to project
      * Cloud Contract is not global for ERP5 Site, but per Virtual MAster
      * project needed on assignment/compute node
      * export module business application
      * revert zero_emission_ratio service deletion
        I do not remember why I dropped it
      * set source/destination_project and ledger on created payment
      * drop slapos orga and accounting template
      112a2c74
    • Romain Courteaud's avatar
      slapos_cloud: · c54efeaa
      Romain Courteaud authored
      * open personal
      * allocation scope is meaningless to restrict allocation permission
      * add follow_up category on Compute Node
        To attach to a project
      * require a project reference when requesting a compute node
      * requesting a compute node requires a project
      * increase error verbosity
      * stop using shadow to allocate instance
        Use project only
      * set follow up on Instance Tree and Software Instance portal type
      * requesting an instance tree requires a project
      * assert project reference is provided
      * propagate follow up when requesting instance
      * requesting an instance requires a project
      * add follow_up accessor on compute partition
      * no need for follow_up on Compute Partition
      * directly search follow_up value on parent Compute Node
      * use new related key format
      * drop source_administration from Compute Node
      * drop source_administration on Compute Node
      * drop source_administration from Compute Node
      * Software Installation drop destination_section and use follow_up
      * stop setting role/member on Assignment by default
      * requesting an instance tree need a project reference
      * add SlapOSVirtualMasterConstraint
        XXX TODO fix broken TALES expression which prevent entering invaludated/suspended
      * configure SlapOSVirtualMasterConstraint on most slapos cloud portal types
        XXX TODO check if some are missing
      * SlapOSVirtualMasterConstraint need f#+=!$ TALES expression
      c54efeaa
    • Romain Courteaud's avatar
      1d56e5d0
    • Romain Courteaud's avatar
      Revert "slapos_cloud: XXX do not approve computer by default" · 469ca5e4
      Romain Courteaud authored
      This reverts commit 53f61021.
      469ca5e4
    • Romain Courteaud's avatar
      b6220e98
    • Romain Courteaud's avatar
      be810be2
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX EXPAND · 731a9f80
      Romain Courteaud authored
      slapos_accounting:
      
      * no need to create open order slowly
      * trade condition has more than one supply line
      * WIP create open order for compute node
      * alarm to create compute node open order
      * categrory
      * define comp node subscription price
      
      slapos_cloud:
      
      * approve computer again
      
      slapos_subscription_request:
      
      * trigger compute node open order creation
      731a9f80
    • Romain Courteaud's avatar
      slapos_cloud: · c6d481b1
      Romain Courteaud authored
      * XXX do not approve computer by default
        TODO: create open order related to the computer usage
      * drop useless requestComputeNodeRegistration workflow transition
        This transition does nothing.
      c6d481b1
    • Romain Courteaud's avatar
      slapos_accounting: · fffd2a07
      Romain Courteaud authored
      * restore previous price setting
      * set round price
      * disable invoice generation for consumption to see test impacted
      * XXX consumption price must be set to 0
        XXX migrate existing packing list
      fffd2a07
    • Romain Courteaud's avatar
      slapos_*: change subscription price. Do not defined it as ttc · 1602d428
      Romain Courteaud authored
      Try to understand why price is not always copied
      
      slapos_accounting: restore original price
      1602d428
    • Romain Courteaud's avatar
      TO SQUASH slapos_*: remove zh templates · bdea9060
      Romain Courteaud authored
      bdea9060
    • Romain Courteaud's avatar
      02de934d
    • Romain Courteaud's avatar
      slapos_*: add new trade condition versions · 782559e7
      Romain Courteaud authored
      The new versions do not include any price informations.
      It is needed to create new Trade Condition which inherite from those versions.
      
      Update preference to use those latest trade conditions.
      782559e7
    • Romain Courteaud's avatar
      TOSQUASH? slapos_accounting: no need to rely on the catalog to validate the trade condition · d1e3213d
      Romain Courteaud authored
      slapos_accounting: factorise code
      
      slapos_wechat: use reference sale trade condition
      
      slapos_erp5: check sale trade condition reference
      d1e3213d
    • Romain Courteaud's avatar
      slapos_accounting: use the trade condition reference instead of the id · 2afe297f
      Romain Courteaud authored
      sale trade condition are versionned.
      2afe297f
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
      slapos_*: use explicit id to improve understanding of all paths · fb3427e0
      Romain Courteaud authored
      Clarify trade condition title
      fb3427e0
    • Romain Courteaud's avatar
      bbaaab36
    • Romain Courteaud's avatar
      slapos_*: define subscription prices on Sale Trade Condition · ba32fc42
      Romain Courteaud authored
      Prices are defined on Supply Line inside Sale Trade Condition.
      
      Drop prices from Subscription Condition.
      Instead, link the Subscription Condition to a Sale Trade Condition.
      
      Apply the Sale Trade Condition on the created Open Sale Order.
      
      Stop duplicating properties from the Subscription Condition to the created Subscription Request.
      
      Payment is managed by the 'payment' category, and not the language.
      
      This allows to remove all '==zh' conditions.
      Instead, use custom Sale Trade Condition.
      ba32fc42
    • Romain Courteaud's avatar
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX EXPAND · 31f973e6
      Romain Courteaud authored
      slapos_accounting:
      
      * generate one open order per instance tree
      * create empty contraint property sheet for open order
      * only one line per open order
      * workaround wrong select returning a result multiple times
      * XXX break instance tree periodicity. Must move to hosting subscription
      * rename script for hosting subscription
      * revert failure error
      * force open order line to have an Instance tree and a hosting subscription
      * hosting subscript will host the date info
      * set open order periodicity on the hosting subscription
      * typo
      * hosting subscription will contain the periodicity
      * create hosting subscription
      * fixup start/stop date confusion
      * add hosting subscription workflow
      * stop using Instance Tree as Subscription Item
      * move periodicity view on hosting subscription
      * simulation is expanded from Hosting Subscription
      * validate hosting subscription
      * check all aggregate value
      * revert aggregate tester
      * simulate from hosting subscription
      * constraint is on hosting subscription
      * interaction are on hosting subscription
      * open order line has 2 aggregate
      * do not create open order if it was not allocated
      * script renamed
      
      slapos_erp5:
      
      * open order line have 2 items now
      
      slapos_cloud:
      
      * open order line has 2 items now
      * hosting subscription have a workflow again
      * add hosting subscription template
      * update HS_view
      
      slapos_subscription_request:
      
      * periodicity is on hosting subscription
      31f973e6
    • Romain Courteaud's avatar
      slapos_cloud: · 30b17a26
      Romain Courteaud authored
      * force open order to be created to allocate
      * only check validated open order
      * check open order consistency before allocating
      * call script on the real web section
      30b17a26
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
      slapos_subscription_request: · 0e76d9fb
      Romain Courteaud authored
      * drop not needed condition
      * factorize some code
      0e76d9fb