1# This is a system workflow so we do not need much UI stuff
2
3head:
4    prefix: export
5    label: I18N_OPENXPKI_UI_WORKFLOW_TYPE_CERT_EXPORT_LABEL
6    description: I18N_OPENXPKI_UI_WORKFLOW_TYPE_CERT_EXPORT_DESC
7
8state:
9    CHECK_EXPORT:
10        action:
11          - global_noop > FAILURE? !cert_export_export_successful
12          - global_noop2 > EXPORT_DONE? cert_export_export_successful
13        autorun: 1
14
15    CHECK_TAGGING:
16        action:
17          - global_noop > READY_TO_PROCESS? cert_export_tagging_successful
18          - global_noop2 > FAILURE? !cert_export_tagging_successful
19        autorun: 1
20
21    CHECK_TRANSFER:
22        action:
23          - global_noop > TRANSFER_DONE? cert_export_transfer_successful
24          - global_noop2 > FAILURE? !cert_export_transfer_successful
25        autorun: 1
26
27    EXPORT_DONE:
28        action:
29          - global_noop > SUCCESS? !cert_export_have_certs_to_transfer
30          - global_noop2 > READY_TO_TRANSFER? cert_export_have_certs_to_transfer
31        autorun: 1
32
33    FAILURE:
34        label: I18N_OPENXPKI_UI_WORKFLOW_STATE_FAILURE_LABEL
35        description: I18N_OPENXPKI_UI_WORKFLOW_STATE_FAILURE_DESC
36
37    INITIAL:
38        label: I18N_OPENXPKI_UI_WORKFLOW_STATE_EXPORT_INITIAL_LABEL
39        action:
40          - cert_export_initialize > INITIALIZED
41
42    INITIALIZED:
43        action:
44          - cert_export_get_config > READY_TO_PROCESS
45        autorun: 1
46
47    READY_TO_PROCESS:
48        action:
49          - cert_export_generate_export_file > CHECK_EXPORT
50        autorun: 1
51
52    READY_TO_TRANSFER:
53        action:
54          - cert_export_transfer_export_file > CHECK_TRANSFER
55        autorun: 1
56
57    SUCCESS:
58        label: I18N_OPENXPKI_UI_WORKFLOW_STATE_SUCCESS_LABEL
59        description: I18N_OPENXPKI_UI_WORKFLOW_STATE_SUCCESS_DESC
60
61    TRANSFER_DONE:
62        action:
63          - cert_export_tag_certs_as_exported > CHECK_TAGGING
64        autorun: 1
65
66
67action:
68    cert_export_generate_export_file:
69        class: OpenXPKI::Server::Workflow::Activity::Reports::CertExport::GenerateExportFile
70
71    cert_export_get_config:
72        class: OpenXPKI::Server::Workflow::Activity::Reports::CertExport::GetConfig
73
74    cert_export_initialize:
75        class: Workflow::Action::Null
76        input:
77          - config_path
78
79    cert_export_tag_certs_as_exported:
80        class: OpenXPKI::Server::Workflow::Activity::Reports::CertExport::TagAsExported
81
82    cert_export_transfer_export_file:
83        class: OpenXPKI::Server::Workflow::Activity::Transfer::SCP
84        param:
85            retry_count: 5
86            retry_interval: +0000000005
87            _map_source: $xml_filename
88            _map_target: $xml_targetname
89            transfer: export.smartcard.transfer
90
91
92condition:
93    cert_export_export_successful:
94        class: Workflow::Condition::Evaluate
95        param:
96            test: not $context->{error_code};
97
98    cert_export_have_certs_to_transfer:
99        class: Workflow::Condition::Evaluate
100        param:
101            test: $context->{xml_filename} ne '';
102
103    cert_export_tagging_successful:
104        class: Workflow::Condition::Evaluate
105        param:
106            test: not $context->{error_code};
107
108    cert_export_transfer_successful:
109        class: Workflow::Condition::Evaluate
110        param:
111            test: not $context->{error_code};
112
113
114field:
115    config_path:
116        name: config_path
117        required: 1
118        type: text
119
120
121acl:
122    CA Operator:
123        creator: any
124
125    RA Operator:
126        creator: any
127        fail: 1
128        resume: 1
129        wakeup: 1
130        history: 1
131        techlog: 1
132        attribute: 1
133        context: 1
134
135    System:
136        creator: any
137        fail: 1
138        resume: 1
139        wakeup: 1
140
141
142