1. 26 Mar, 2024 15 commits
    • Romain Courteaud's avatar
      slapos_wechat: · 02b974a7
      Romain Courteaud authored
      * drop not needed wechat_sale_trade_condition
      * new id generator per node is used
      * payment transaction ID is used as mapping
      02b974a7
    • Romain Courteaud's avatar
      slapos_panel_ui_test: · e0406db2
      Romain Courteaud authored
      * test panel scenario
      * validate testFunctionalSlapOSPanelStyle
      * dependency
      *  HARDCODED data/user bootstrap
      *  passwd policy
      * use theia directly in the test
      * WIP shared instance test
      * shared instance test
      * limit Software Instance to manager only
      * add basic payable service test
      * randomize logins
      * check consistency at the end of the test
      * slapos_panel_ui_test: check all project related documents as project manager
      * execute all alarms at the end of the test to detect unexpected side effects
      * ensure we can activate slave allocation on same tree
      * test remote node allocation
      * test Slave Instance allocation on Remote Node
      * ensure request limit the list of release/type based on allocation supply
      * test Upgrade Decision actions
      * test Computer Network creation
      * use Person_addVirtualMaster
      * do not explicitely call alarms
        rely on interaction workflow instead
      * add Software Product to create Subscription Request
      * add Sale Supply for virtual master
      * fixup to generate subscription request and use the instance parameter editor
      * fixup Instance editor usage
      * set reference on the Trade Condition
      * fix consistency of other documents before running the tests
      * request instance action has been modified
      * fixup accounting scenario
      * text: configure trade_condition_type on the Sale Trade Condition
      * test: assignments are automatically created when adding a virtual master
      * fix Trade Condition creation
      * update selector used by the new jsoneditor
      * discussion_thread_reader gadget is now used
      * do not check Web Site consistency
      * no need to define the currency manually
      * search link has been removed. Access global search manually
      * do not check System Preference
      * test: set the region on customer accounts
      e0406db2
    • Romain Courteaud's avatar
      slapos_pdm: · deb4d4d7
      Romain Courteaud authored
      * add SlapOSVirtualMasterSourceProjectConstraint on Upgrade Decision
      * software product must be linked to a project
      * create Software Type portal type
        It is a variation of a Software Product
      * rename Software Type to Software Product Type Variation
      * add Software Product Release Variation portal type
      * force default use/base_contribution on Software Product
        Didn't find another way to do it (init script requires data migration)
      * require Software Product to have at least one Type and one Release
      * store url_string on Release Variation
      * use edit_workflow on Variation portal types
      * use the jump action to access Software Release
      * add dedicated form to view Release
      * add Software Type view
      * set SoftwareProduct default quantity unit
      * support document without categories property
      * add constraint to ensure quantity unit of a Software Product is defined
      * drop Software Release configuration. Drop hardcoded template only used in tests
      * fixup
        See 1173ea0e
      * drop Compute Node upgrade
        This is now handled manually by updating the Allocation Supply
      * stop allowing Upgrade Decision Line creation
      * Upgrade Decision is a ticket
      * wip upgrade decision redesign with allocation supply
      * not commited script
      * really compare url strings
      * update upgrade decision view
      * only create upgrade decision for SOftware Instance for now
      * set the compute node on the test allocation supply
      * drop not used scripts
      * remote tests from dropped scripts
      * mark test to check
      * test alarm_instance_tree_create_upgrade_decision
      * drop upgrade_scope
      * test upgrade decision creation for not allocated instance tree
      * test Upgrade for allocated Software Instance
      * drop deprecated tests
      * root shared instance can not be upgraded by Allocation Supply on the same tree
      * upgrade not allocated or allocated on remote slave instances
      * update not allocated in there is instance node supply
      * test upgrade Instance Node
      * drop unused InstanceTree_getUpgradeSubscriptionRelatedValue
      * drop UpgradeDecisionLine_cancel
      * drop Upgrade Decision Line view
      * drop SoftwareProduct_getSortedSoftwareReleaseList
      * fix upgrade decision list view
      * drop InstanceTree_isUpgradePossible
        No way to know which software release url on instance will request.
      * drop UpgradeDecision_processUpgrade
      * drop Base_acceptUpgradeDecision
      * drop Base_rejectUpgradeDecision
      * drop reviewRegistration
      * check created upgrade decision
      * do not propose again to upgrade if decision has been rejected
      * no need to check all rejected decisions
      * do not put newly create decision in started
        Ask review from manager
      * drop UpgradeDecision_notify
      * drop UpgradeDecision_notifyDelivered
      * drop reviewUpgrade
      * drop UpgradeDecision_getAggregateValue
      * drop approveRegistration
      * drop upgrade_slap_interface_workflow
      * drop UpgradeDecision_requestChangeState
      * drop slapos_pdm_auto_cancel_upgrade_decision
      * use UpgradeDecision_processUpgrade
      * alarm to destroy software installation
      * drop unused template
      * configure Upgrade Decision worklist
      * drop not needed script arguments
      * add Upgrade Decision constraints
      * method moved to global mixin
      * do not upgrade if there is no instance yet
      * create upgrade decision as soon as Allocation Supply is validated
      * workaround to prevent breaking the instance when classes are live reloaded
      * test: disable alarm when creating an allocation supply
      * test: disable alarm
      * software_release is an optional variation
        We can not update the Open Order every time one Instance is upgraded
      * sort SoftwareProduct getVariationBaseCategoryList's result
      * update xml format
      * optional_variation_base_category_list are not set in variation_base_category_list
      * force software change from Upgrade Decision
      * drop template_instance_tree
      * allow to force upgrade to a specific release
      * rely on self instead of one a global
      * drop view_related_upgrade_decision on Compute Node
        Deprecated for a long time
      * set the causality relation on the ticket
      * trigger upgrade alarm as soon as accepted
      * deliver the decision when finished
      * if not person can be found, search for everybody only
      
      slapos_pdm: fixup tests
      deb4d4d7
    • Romain Courteaud's avatar
      slapos_crm: · a1b128b6
      Romain Courteaud authored
      * source_administration is not used anymore on Compute Node
      * add virtual master contraint to tickets and events portal types
      * propagate project from Regularisation Request to event
      * delivery/movement must use source_project instead of follow_up
      * set source_project on event
      * stop setting person as source_project
      * copy project from ticket to the new event
      * utf-8 encoding issue
      * XXX disable regularisation request alarm
      * Regularisation Request Module acquires local roles
        See other modules
      * drop upgrade_scope
        Upgrade is managed by Allocation Supply.
      * drip upgrade_scope usage
      * drop Upgrade Decision Line usage
      * lint test
      * fix slapos_crm_check_software_installation_state alarm test
      * fixup slapos_crm_check_compute_node_state tests
      * fixup slapos_crm_check_instance_in_error test
      * fixup slapos_crm_update_support_request_state tests
      * fixup slapos_crm_send_pending_ticket_reminder test
      * fixup slapos_crm_trigger_stop_reminder_escalation tests
      * fixup slapos_crm_trigger_stop_acknowledgment_escalation test
      * fixup slapos_crm_trigger_delete_reminder_escalation test
      * fix slapos_crm_trigger_acknowledgment_escalation test
      * fix slapos_crm_stop_instance_tree test
      * fix slapos_crm_invalidate_suspended_regularisation_request test
      * fix slapos_crm_delete_instance_tree test
      * fix slapos_crm_create_regularisation_request test
      * drop slapos_crm_check_update_allocation_scope tests
      * do not require source_project on crm
      * fixup rebase: drop Instance Tree Module | slapos_resilience_usage_report
      * drop preferred_support_request_template_property
      * drop slapos_crm_support_request_template
      * fixup slapos_crm_create_regularisation_request tests
      * reactivate slapos_crm_create_regularisation_request
      * test slapos_crm_invalidate_suspended_regularisation_request is ok
      * test slapos_crm_check_software_installation_state
      * test slapos_crm_check_instance_in_error
      * test slapos_crm_update_support_request_state
      * desactivate Person_getSubscriptionRequestFirstUnpaidInvoiceList
      * drop Person_getSubscriptionRequestFirstUnpaidInvoiceList
      * do not count all Support Requests
        limit parameter with count is meaningless, as count return 1 result
      * update Base_getSupportRequestInProgress usage
      * XXX disable ticket.notify and ticket.requestEvent
      * wip script to create Support Request and Event
      * search a matching Trade Condition to generate a Support Request
      * update ComputeNode_checkState to use new scripts
      * test ComputeNode_checkSoftwareInstallationState
      * deliver outgoing events
      * test InstanceTree_checkSoftwareInstanceState
      * Project_createSupportRequestWithCausality already checks if Support Request exists
      * no need to check twice the object portal type
      * test SupportRequest_updateMonitoringState
      * activate one more alarm
      * revert  Send Mail on pending tickets
        nexedi/slapos.core!417
        Virtual Master's manager are responsible to handle the tickets through their worklist.
        Not user.
        Virtual Master's manager can send email from the Ticket to directly ping a user.
      * drop ticket_slap_interface_workflow
      * test ComputeNode_hasContactedRecently
        Do not check if there is a packing list. It is unrelated to the contact.
      * Base_getOpenRelatedTicketList was dropped
      * ComputeNode_checkAndUpdateAllocationScope was dropped
      * test: simplify
      * set comment in the event workflow history
      * send Mail Message
      * unify event creation
        Reuse Ticket_createProjectEvent
      * do not pass a empty list of node_uid
      * no need to manually handle the notification message
      * create the Regularisation Request from a Trade Condition instead of a template
      * use notification message title instead of the ticket title
      * use Entity_hasOutstandingAmount
        Entity_getOutstandingAmount is meaningless in case of multiple source_section and multiple currencies.
        Entity_hasOutstandingAmount will only report True or False.
      * test RegularisationRequest_invalidateIfPersonBalanceIsOk
      * test RegularisationRequest_checkToTriggerNextEscalationStep
      * test RegularisationRequest_triggerStopReminderEscalation
      * test RegularisationRequest_triggerStopAcknowledgmentEscalation
      * test RegularisationRequest_triggerDeleteReminderEscalation
      * test RegularisationRequest_stopInstanceTreeList
      * test RegularisationRequest_deleteInstanceTreeList
      * fixup RegularisationRequest_checkToSendUniqEvent tests
      * fixup RegularisationRequest_checkToTriggerNextEscalationStep tests
      * fixup InstanceTree_stopFromRegularisationRequest tests
      * fixup InstanceTree_deleteFromRegularisationRequest tests
      * drop slapos_crm_regularisation_request_template
      * drop slapos_crm_web_message_template
      * drop preferred_web_message_template_property
      * drop slapos_ticket_trade_condition
      * drop update_destination_for_slapos
      * drop allocation_tester
      * drop template_software_installation
      * drop template_instance_tree
      * drop template_member
      * test: fixup person title
      * test: fixup: ensure tickets can be created
      * test: fixup creation of instance tree
      * test: fixup instance tree creation
      * test: ComputeNode_getTicketRelatedList was dropped
      * test: rss feed will be used by virtual manager production
      * test: ticket.approveRegistration was dropped
      * ExactMatch
      * drop preferred_cloud_contract_enabled_property
      * only submit the newlu created Support Request
        end user can not validate their submitted ticket
      * drop jump_related_slapos_item
      * drop outdated SlapOSSupportRequestConstraint
      * submit created event
        This allow to separate new ticket from the one currently handled
      * constraint was dropped
      * test: create test ticket in submitted state
      * support request are created in submitted state
      * drop open/personal allocation_scope
      * only check automated Outstanding Invoices
      * invalidate Regularisation Request as soon as payment is done
      * create the regularisation request as soon as possible
      * use _baseSetGroupingReference for interaction
      * test: disable interaction
      * test: use PinnedDateTime context
      * delete instance, compute node, project if regularisation request reach the end
      * test: add crm scenario showing services are destroyed
      * trigger Project invalidation as soon as Nodes and Instances are invalidated
      * trigger not paid item deletion as fast as possible
      * test: reduce number of alarm triggered
      * do not stop but delete directly
        Services were already in degraded mode due to allocation/propagation being forbidden
      * test: only payable services are destroyed by the subscription request
      a1b128b6
    • Romain Courteaud's avatar
      slapos_slap_tool: support for the virtual master logic · be1e382e
      Romain Courteaud authored
      A project reference is required to create a compute node.
      
      Add compatibility with the user request
      Console client does not send a project reference.
      Try to guess it for simple cases
      be1e382e
    • Romain Courteaud's avatar
      slapos_cloud: add virtual master concept · 194d02a3
      Romain Courteaud authored
      Drop the allocation scope open/subscription/public logic.
      
      Instead, use Project as Virtual Master, and force
      all slapos_cloud object to be linked to one Project:
      * every Compute Node is linked to a Project
      * any Project's Instance can be allocated on a Project's Compute Node
      
      Allocation is managed by configuring an Allocation Supply document,
      which defined on which Compute Node a Software Product can be allocated.
      
      User are not allowed anymore to change the release/type/shared state of their Instance Tree.
      
      Managing Compute Node is done on the virtual master level, and so,
      there is no need to define any Compute Node administrator.
      
      A Software Product is a variated resource with 2 axes: software release url and softare type.
      
      Slave Instance are now allocated on Instance Node, which is created
      from the Software Instance which will control the configuration.
      Slave Instance allocation is also controlled by an Allocation Supply,
      which allow separating the Software Instance and Slave Instances versions.
      
      There could be any number of virtual master in the system.
      Every virtual master defines its own Software Products.
      Because of this, it is not possible to change a document's virtual master
      after its creation.
      
      Instance request can be propagated on another virtual master, by
      allocating them on a Remote Node document, which will generate
      a new Instance Tree request on another virtual master.
      
      Also in this commit:
      * trigger alarms as soon as possible with interaction workflow
        which allows to reduce some alarms frequency
      * drop never used Organisation logic
      * drop person.requestSite
      * drop audit_validation_workflow
      * drop ComputePartition_getCustomAllocationParameterDict
        This is a hack incompatible with virtual master standalone logic.
      * drop cloud contract
      * do not sort security base category when generating local roles
        Otherwise, it is not possible to ensure source_section/function and destination/function generate the same local role
      * stop using hardcoded currency/organisation/trade condition/business process
      * drop templates usages
      * add One Time Virtual Master Access Token portal type
        Needed for compatibility with the compute node deploy script
      194d02a3
    • Romain Courteaud's avatar
      slapos_category: · e400b0fd
      Romain Courteaud authored
      * add new business application categories
      * export edger category
      * automated ledger is not only for accounting
      * drop allocation_scope/open categories
        All compute nodes are public now
      * add use/trade/deposit category
      * do not use the same title for 2 categories
      * Add trade condition type categories.
        This will be used to automatically select a Trade Condition in slapos_accounting
      * add invoicing taxable vat categories
      e400b0fd
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
      slapos_mysql_innodb_catalog: · 6aba2a95
      Romain Courteaud authored
      * drop default_or_child_aggregate_reference
      * drop  default_or_child_aggregate_uid catalog key
      * drop unused follow_up_default_or_child_aggregate_uid
      * drop causality_subscription_request_related_uid related key
      6aba2a95
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
    • Romain Courteaud's avatar
      slapos_mysql_innodb_catalog: configure title column as a keyword key · f59f369c
      Romain Courteaud authored
      This make usage of the relationfield nicer.
      f59f369c
    • Romain Courteaud's avatar
      1e6b3694
  2. 25 Mar, 2024 1 commit
    • Rafael Monnerat's avatar
      slapos_cloud: Split edit in 2 · acff4533
      Rafael Monnerat authored
        This is required due interacton workflow call on _setAlloctionScope.
      
        We could change the capacity_scope to close (so allocation worklfow order dont matter, but
        it would change the expected behaviour if we drop the interaction workflow, so it is more
        reasonable keep the existing behaviour unchanged.
      acff4533
  3. 23 Mar, 2024 1 commit
  4. 22 Mar, 2024 6 commits
  5. 19 Mar, 2024 8 commits
  6. 15 Mar, 2024 2 commits
  7. 14 Mar, 2024 3 commits
  8. 13 Mar, 2024 1 commit
  9. 08 Mar, 2024 3 commits