diff --git a/tox.ini b/tox.ini index cb41d2c..f170129 100644 --- a/tox.ini +++ b/tox.ini @@ -45,30 +45,6 @@ commands = {[testenv:json-umn]commands} -[testenv:pdf-docs] -deps = - {[testenv:docs]deps} - {[testenv:bindeps]deps} -allowlist_externals = - rm - mkdir - wget - make - bash - cp -commands = - mkdir -p doc/build/pdf - mkdir -p doc/build/html - {[testenv:bindeps]commands} - mkdir -p {toxinidir}/_templates - wget -O {toxinidir}/_templates/longtable.tex.jinja https://gitea.eco.tsi-dev.otc-service.com/infra/docs-templates/raw/branch/main/templates/longtable.tex.jinja - wget -O {toxinidir}/_templates/tabular.tex.jinja https://gitea.eco.tsi-dev.otc-service.com/infra/docs-templates/raw/branch/main/templates/tabular.tex.jinja - wget -O {toxinidir}/_templates/tabulary.tex.jinja https://gitea.eco.tsi-dev.otc-service.com/infra/docs-templates/raw/branch/main/templates/tabulary.tex.jinja - {[testenv:api-ref-pdf-docs]commands} - {[testenv:umn-pdf-docs]commands} - - - # HTML version [testenv:api-ref] deps = {[testenv:docs]deps} diff --git a/umn/source/_static/images/en-us_image_0000001955571530.png b/umn/source/_static/images/en-us_image_0000001955571530.png new file mode 100644 index 0000000..7bbd96a Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000001955571530.png differ diff --git a/umn/source/_static/images/en-us_image_0000001955571534.png b/umn/source/_static/images/en-us_image_0000001955571534.png new file mode 100644 index 0000000..cde92c6 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000001955571534.png differ diff --git a/umn/source/_static/images/en-us_image_0000001991770641.png b/umn/source/_static/images/en-us_image_0000001991770641.png new file mode 100644 index 0000000..05bd386 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000001991770641.png differ diff --git a/umn/source/_static/images/en-us_image_0000001991770693.png b/umn/source/_static/images/en-us_image_0000001991770693.png new file mode 100644 index 0000000..65d4430 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000001991770693.png differ diff --git a/umn/source/_static/images/en-us_image_0000001991890873.png b/umn/source/_static/images/en-us_image_0000001991890873.png new file mode 100644 index 0000000..ab5dc81 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000001991890873.png differ diff --git a/umn/source/_static/images/en-us_image_0000002119222466.png b/umn/source/_static/images/en-us_image_0000002119222466.png new file mode 100644 index 0000000..77ff706 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002119222466.png differ diff --git a/umn/source/_static/images/en-us_image_0000002119380574.png b/umn/source/_static/images/en-us_image_0000002119380574.png new file mode 100644 index 0000000..45fc248 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002119380574.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120549060.png b/umn/source/_static/images/en-us_image_0000002120549060.png new file mode 100644 index 0000000..e3f19bb Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120549060.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120705156.png b/umn/source/_static/images/en-us_image_0000002120705156.png new file mode 100644 index 0000000..3e169fb Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120705156.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120707020.png b/umn/source/_static/images/en-us_image_0000002120707020.png new file mode 100644 index 0000000..1e5bc1d Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120707020.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120743374.png b/umn/source/_static/images/en-us_image_0000002120743374.png new file mode 100644 index 0000000..1734887 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120743374.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120743394.png b/umn/source/_static/images/en-us_image_0000002120743394.png new file mode 100644 index 0000000..e80b7fd Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120743394.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120743398.png b/umn/source/_static/images/en-us_image_0000002120743398.png new file mode 100644 index 0000000..8ce7a59 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120743398.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120746402.png b/umn/source/_static/images/en-us_image_0000002120746402.png new file mode 100644 index 0000000..7422648 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120746402.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120901474.png b/umn/source/_static/images/en-us_image_0000002120901474.png new file mode 100644 index 0000000..558f248 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120901474.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120901486.png b/umn/source/_static/images/en-us_image_0000002120901486.png new file mode 100644 index 0000000..87207a2 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120901486.png differ diff --git a/umn/source/_static/images/en-us_image_0000002120901494.png b/umn/source/_static/images/en-us_image_0000002120901494.png new file mode 100644 index 0000000..2b3cfe5 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002120901494.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121519232.png b/umn/source/_static/images/en-us_image_0000002121519232.png new file mode 100644 index 0000000..b49631d Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121519232.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121525200.png b/umn/source/_static/images/en-us_image_0000002121525200.png new file mode 100644 index 0000000..5d01d5b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121525200.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121663600.png b/umn/source/_static/images/en-us_image_0000002121663600.png new file mode 100644 index 0000000..d423cec Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121663600.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121667372.png b/umn/source/_static/images/en-us_image_0000002121667372.png new file mode 100644 index 0000000..712e249 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121667372.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121673112.png b/umn/source/_static/images/en-us_image_0000002121673112.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121673112.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121681612.png b/umn/source/_static/images/en-us_image_0000002121681612.png new file mode 100644 index 0000000..b2e5a2c Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121681612.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121739696.png b/umn/source/_static/images/en-us_image_0000002121739696.png new file mode 100644 index 0000000..de006bc Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121739696.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121742716.png b/umn/source/_static/images/en-us_image_0000002121742716.png new file mode 100644 index 0000000..6b5e70b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121742716.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121754732.png b/umn/source/_static/images/en-us_image_0000002121754732.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121754732.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121776826.png b/umn/source/_static/images/en-us_image_0000002121776826.png new file mode 100644 index 0000000..a5f452b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121776826.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121776834.png b/umn/source/_static/images/en-us_image_0000002121776834.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121776834.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121900840.png b/umn/source/_static/images/en-us_image_0000002121900840.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121900840.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121906076.png b/umn/source/_static/images/en-us_image_0000002121906076.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121906076.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121909700.png b/umn/source/_static/images/en-us_image_0000002121909700.png new file mode 100644 index 0000000..a5f452b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121909700.png differ diff --git a/umn/source/_static/images/en-us_image_0000002121934994.png b/umn/source/_static/images/en-us_image_0000002121934994.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002121934994.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124611690.png b/umn/source/_static/images/en-us_image_0000002124611690.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124611690.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124611694.png b/umn/source/_static/images/en-us_image_0000002124611694.png new file mode 100644 index 0000000..a53ddc0 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124611694.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124611726.png b/umn/source/_static/images/en-us_image_0000002124611726.png new file mode 100644 index 0000000..6b5e70b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124611726.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124611734.png b/umn/source/_static/images/en-us_image_0000002124611734.png new file mode 100644 index 0000000..6b5e70b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124611734.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124611738.png b/umn/source/_static/images/en-us_image_0000002124611738.png new file mode 100644 index 0000000..3e0389b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124611738.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124769858.png b/umn/source/_static/images/en-us_image_0000002124769858.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124769858.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124769866.png b/umn/source/_static/images/en-us_image_0000002124769866.png new file mode 100644 index 0000000..92e22e4 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124769866.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124769882.png b/umn/source/_static/images/en-us_image_0000002124769882.png new file mode 100644 index 0000000..fdf1c92 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124769882.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124769894.png b/umn/source/_static/images/en-us_image_0000002124769894.png new file mode 100644 index 0000000..a53ddc0 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124769894.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124769898.png b/umn/source/_static/images/en-us_image_0000002124769898.png new file mode 100644 index 0000000..3e0389b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124769898.png differ diff --git a/umn/source/_static/images/en-us_image_0000002124769902.png b/umn/source/_static/images/en-us_image_0000002124769902.png new file mode 100644 index 0000000..b7da3cb Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002124769902.png differ diff --git a/umn/source/_static/images/en-us_image_0000002155947169.png b/umn/source/_static/images/en-us_image_0000002155947169.png new file mode 100644 index 0000000..7650adf Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002155947169.png differ diff --git a/umn/source/_static/images/en-us_image_0000002155947473.png b/umn/source/_static/images/en-us_image_0000002155947473.png new file mode 100644 index 0000000..7422648 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002155947473.png differ diff --git a/umn/source/_static/images/en-us_image_0000002155948217.png b/umn/source/_static/images/en-us_image_0000002155948217.png new file mode 100644 index 0000000..c419a77 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002155948217.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156029369.png b/umn/source/_static/images/en-us_image_0000002156029369.png new file mode 100644 index 0000000..07eca99 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156029369.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156056533.png b/umn/source/_static/images/en-us_image_0000002156056533.png new file mode 100644 index 0000000..093d37d Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156056533.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156063229.png b/umn/source/_static/images/en-us_image_0000002156063229.png new file mode 100644 index 0000000..302608a Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156063229.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156063237.png b/umn/source/_static/images/en-us_image_0000002156063237.png new file mode 100644 index 0000000..e80b7fd Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156063237.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156064705.png b/umn/source/_static/images/en-us_image_0000002156064705.png new file mode 100644 index 0000000..ea24224 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156064705.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156141613.png b/umn/source/_static/images/en-us_image_0000002156141613.png new file mode 100644 index 0000000..87207a2 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156141613.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156909017.png b/umn/source/_static/images/en-us_image_0000002156909017.png new file mode 100644 index 0000000..a8e4a4d Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156909017.png differ diff --git a/umn/source/_static/images/en-us_image_0000002156993381.png b/umn/source/_static/images/en-us_image_0000002156993381.png new file mode 100644 index 0000000..6b5e70b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002156993381.png differ diff --git a/umn/source/_static/images/en-us_image_0000002157056257.png b/umn/source/_static/images/en-us_image_0000002157056257.png new file mode 100644 index 0000000..9e4d9d6 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002157056257.png differ diff --git a/umn/source/_static/images/en-us_image_0000002157142509.png b/umn/source/_static/images/en-us_image_0000002157142509.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002157142509.png differ diff --git a/umn/source/_static/images/en-us_image_0000002157144325.png b/umn/source/_static/images/en-us_image_0000002157144325.png new file mode 100644 index 0000000..543c529 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002157144325.png differ diff --git a/umn/source/_static/images/en-us_image_0000002157147725.png b/umn/source/_static/images/en-us_image_0000002157147725.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002157147725.png differ diff --git a/umn/source/_static/images/en-us_image_0000002157215021.png b/umn/source/_static/images/en-us_image_0000002157215021.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002157215021.png differ diff --git a/umn/source/_static/images/en-us_image_0000002157215029.png b/umn/source/_static/images/en-us_image_0000002157215029.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002157215029.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158650788.png b/umn/source/_static/images/en-us_image_0000002158650788.png new file mode 100644 index 0000000..92e22e4 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158650788.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158802688.png b/umn/source/_static/images/en-us_image_0000002158802688.png new file mode 100644 index 0000000..1303a51 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158802688.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158816218.png b/umn/source/_static/images/en-us_image_0000002158816218.png new file mode 100644 index 0000000..20ab12b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158816218.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158816238.png b/umn/source/_static/images/en-us_image_0000002158816238.png new file mode 100644 index 0000000..7e74cb0 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158816238.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158817102.png b/umn/source/_static/images/en-us_image_0000002158817102.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158817102.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158817114.png b/umn/source/_static/images/en-us_image_0000002158817114.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158817114.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158817118.png b/umn/source/_static/images/en-us_image_0000002158817118.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158817118.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158819098.png b/umn/source/_static/images/en-us_image_0000002158819098.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158819098.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158820094.png b/umn/source/_static/images/en-us_image_0000002158820094.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158820094.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158820098.png b/umn/source/_static/images/en-us_image_0000002158820098.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158820098.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158820394.png b/umn/source/_static/images/en-us_image_0000002158820394.png new file mode 100644 index 0000000..90490cd Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158820394.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158823458.png b/umn/source/_static/images/en-us_image_0000002158823458.png new file mode 100644 index 0000000..51cffd8 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158823458.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158823486.png b/umn/source/_static/images/en-us_image_0000002158823486.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158823486.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158823498.png b/umn/source/_static/images/en-us_image_0000002158823498.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158823498.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158823542.png b/umn/source/_static/images/en-us_image_0000002158823542.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158823542.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158823546.png b/umn/source/_static/images/en-us_image_0000002158823546.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158823546.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158975566.png b/umn/source/_static/images/en-us_image_0000002158975566.png new file mode 100644 index 0000000..dc83743 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158975566.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158975806.png b/umn/source/_static/images/en-us_image_0000002158975806.png new file mode 100644 index 0000000..3923753 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158975806.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158976894.png b/umn/source/_static/images/en-us_image_0000002158976894.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158976894.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158978150.png b/umn/source/_static/images/en-us_image_0000002158978150.png new file mode 100644 index 0000000..d5dfb23 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158978150.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158978858.png b/umn/source/_static/images/en-us_image_0000002158978858.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158978858.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158979842.png b/umn/source/_static/images/en-us_image_0000002158979842.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158979842.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158979846.png b/umn/source/_static/images/en-us_image_0000002158979846.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158979846.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158983038.png b/umn/source/_static/images/en-us_image_0000002158983038.png new file mode 100644 index 0000000..5bd14a0 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158983038.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158983306.png b/umn/source/_static/images/en-us_image_0000002158983306.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158983306.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158983366.png b/umn/source/_static/images/en-us_image_0000002158983366.png new file mode 100644 index 0000000..51cffd8 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158983366.png differ diff --git a/umn/source/_static/images/en-us_image_0000002158983474.png b/umn/source/_static/images/en-us_image_0000002158983474.png new file mode 100644 index 0000000..51cffd8 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002158983474.png differ diff --git a/umn/source/_static/images/en-us_image_0000002159668284.png b/umn/source/_static/images/en-us_image_0000002159668284.png new file mode 100644 index 0000000..e54525e Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002159668284.png differ diff --git a/umn/source/_static/images/en-us_image_0000002159891413.png b/umn/source/_static/images/en-us_image_0000002159891413.png new file mode 100644 index 0000000..92e22e4 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002159891413.png differ diff --git a/umn/source/_static/images/en-us_image_0000002159891417.png b/umn/source/_static/images/en-us_image_0000002159891417.png new file mode 100644 index 0000000..92e22e4 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002159891417.png differ diff --git a/umn/source/_static/images/en-us_image_0000002159891445.png b/umn/source/_static/images/en-us_image_0000002159891445.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002159891445.png differ diff --git a/umn/source/_static/images/en-us_image_0000002159891453.png b/umn/source/_static/images/en-us_image_0000002159891453.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002159891453.png differ diff --git a/umn/source/_static/images/en-us_image_0000002159891457.png b/umn/source/_static/images/en-us_image_0000002159891457.png new file mode 100644 index 0000000..6b5e70b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002159891457.png differ diff --git a/umn/source/_static/images/en-us_image_0000002160009777.png b/umn/source/_static/images/en-us_image_0000002160009777.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002160009777.png differ diff --git a/umn/source/_static/images/en-us_image_0000002160009781.png b/umn/source/_static/images/en-us_image_0000002160009781.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002160009781.png differ diff --git a/umn/source/_static/images/en-us_image_0000002160009809.png b/umn/source/_static/images/en-us_image_0000002160009809.png new file mode 100644 index 0000000..898c9c6 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002160009809.png differ diff --git a/umn/source/_static/images/en-us_image_0000002160009817.png b/umn/source/_static/images/en-us_image_0000002160009817.png new file mode 100644 index 0000000..3e0389b Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002160009817.png differ diff --git a/umn/source/_static/images/en-us_image_0000002160009821.png b/umn/source/_static/images/en-us_image_0000002160009821.png new file mode 100644 index 0000000..331b957 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002160009821.png differ diff --git a/umn/source/_static/images/en-us_image_0000002160693600.png b/umn/source/_static/images/en-us_image_0000002160693600.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002160693600.png differ diff --git a/umn/source/_static/images/en-us_image_0000002166544344.png b/umn/source/_static/images/en-us_image_0000002166544344.png new file mode 100644 index 0000000..03e7a5f Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002166544344.png differ diff --git a/umn/source/_static/images/en-us_image_0000002166698096.png b/umn/source/_static/images/en-us_image_0000002166698096.png new file mode 100644 index 0000000..072a2d7 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002166698096.png differ diff --git a/umn/source/_static/images/en-us_image_0000002166704124.png b/umn/source/_static/images/en-us_image_0000002166704124.png new file mode 100644 index 0000000..257c0fc Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002166704124.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194091645.png b/umn/source/_static/images/en-us_image_0000002194091645.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194091645.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194091653.png b/umn/source/_static/images/en-us_image_0000002194091653.png new file mode 100644 index 0000000..64f3a69 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194091653.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194180509.png b/umn/source/_static/images/en-us_image_0000002194180509.png new file mode 100644 index 0000000..9fa5dbc Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194180509.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194183289.png b/umn/source/_static/images/en-us_image_0000002194183289.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194183289.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194183665.png b/umn/source/_static/images/en-us_image_0000002194183665.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194183665.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194186605.png b/umn/source/_static/images/en-us_image_0000002194186605.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194186605.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194186609.png b/umn/source/_static/images/en-us_image_0000002194186609.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194186609.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194187417.png b/umn/source/_static/images/en-us_image_0000002194187417.png new file mode 100644 index 0000000..4912110 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194187417.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194189973.png b/umn/source/_static/images/en-us_image_0000002194189973.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194189973.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194190049.png b/umn/source/_static/images/en-us_image_0000002194190049.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194190049.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194190061.png b/umn/source/_static/images/en-us_image_0000002194190061.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194190061.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194191125.png b/umn/source/_static/images/en-us_image_0000002194191125.png new file mode 100644 index 0000000..21460cb Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194191125.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194218013.png b/umn/source/_static/images/en-us_image_0000002194218013.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194218013.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194220969.png b/umn/source/_static/images/en-us_image_0000002194220969.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194220969.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194220973.png b/umn/source/_static/images/en-us_image_0000002194220973.png new file mode 100644 index 0000000..582b161 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194220973.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194224409.png b/umn/source/_static/images/en-us_image_0000002194224409.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194224409.png differ diff --git a/umn/source/_static/images/en-us_image_0000002194226997.png b/umn/source/_static/images/en-us_image_0000002194226997.png new file mode 100644 index 0000000..884c294 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002194226997.png differ diff --git a/umn/source/_static/images/en-us_image_0000002200348205.png b/umn/source/_static/images/en-us_image_0000002200348205.png new file mode 100644 index 0000000..5a21317 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002200348205.png differ diff --git a/umn/source/_static/images/en-us_image_0000002202025297.png b/umn/source/_static/images/en-us_image_0000002202025297.png new file mode 100644 index 0000000..9fa47b1 Binary files /dev/null and b/umn/source/_static/images/en-us_image_0000002202025297.png differ diff --git a/umn/source/auditing.rst b/umn/source/auditing.rst new file mode 100644 index 0000000..1e26527 --- /dev/null +++ b/umn/source/auditing.rst @@ -0,0 +1,64 @@ +:original_name: en-us_topic_0000002154653061.html + +.. _en-us_topic_0000002154653061: + +Auditing +======== + +Scenario +-------- + +Cloud Trace Service (CTS) records all operations performed on cloud services, providing data support for customers in fault locating, resource management, and security auditing. When you enable CTS, it begins to record operations performed on RFS resource + +Prerequisites +------------- + +You have enabled CTS. + +Supported RFS Operations +------------------------ + +.. table:: **Table 1** RFS operations supported by CTS + + +------------------------+---------------+-------------------------------------------------------+ + | Trace Name | Resource Type | Operation | + +========================+===============+=======================================================+ + | createStack | stack | Creating a stack | + +------------------------+---------------+-------------------------------------------------------+ + | deployStack | stack | Deploying a stack directly | + +------------------------+---------------+-------------------------------------------------------+ + | deleteStack | stack | Deleting a stack started | + +------------------------+---------------+-------------------------------------------------------+ + | deleteStackEnd | stack | Deleting a stack finished | + +------------------------+---------------+-------------------------------------------------------+ + | updateStack | stack | Updating a stack | + +------------------------+---------------+-------------------------------------------------------+ + | continueRollbackStack | stack | Retrying a failed rollback. Available only via API. | + +------------------------+---------------+-------------------------------------------------------+ + | continueDeployStack | stack | Retrying a failed deployment. Available only via API. | + +------------------------+---------------+-------------------------------------------------------+ + | createExecutionPlan | executionPlan | Creating an execution plan | + +------------------------+---------------+-------------------------------------------------------+ + | applyExecutionPlan | executionPlan | Executing an execution plan | + +------------------------+---------------+-------------------------------------------------------+ + | deleteExecutionPlan | executionPlan | Deleting an execution plan | + +------------------------+---------------+-------------------------------------------------------+ + | createTemplate | rf-template | Creating a template | + +------------------------+---------------+-------------------------------------------------------+ + | deleteTemplate | rf-template | Deleting a template | + +------------------------+---------------+-------------------------------------------------------+ + | updateTemplate | rf-template | Updating template metadata such as description | + +------------------------+---------------+-------------------------------------------------------+ + | createTemplateVersion | rf-template | Creating a template version | + +------------------------+---------------+-------------------------------------------------------+ + | deleteTemplateVersion | rf-template | Deleting a template version | + +------------------------+---------------+-------------------------------------------------------+ + | parseTemplateVariables | template | Parsing template variables | + +------------------------+---------------+-------------------------------------------------------+ + | useAgency | agency | Recording user agency | + +------------------------+---------------+-------------------------------------------------------+ + +Querying Traces +--------------- + +See \ `Querying Real-Time Traces `__\ . diff --git a/umn/source/change_history.rst b/umn/source/change_history.rst new file mode 100644 index 0000000..5e162a9 --- /dev/null +++ b/umn/source/change_history.rst @@ -0,0 +1,12 @@ +:original_name: en-us_topic_0000002154653065.html + +.. _en-us_topic_0000002154653065: + +Change History +============== + +=========== =================================== +Released On Description +=========== =================================== +2024-12-14 This is the first official release. +=========== =================================== diff --git a/umn/source/conf.py b/umn/source/conf.py old mode 100755 new mode 100644 diff --git a/umn/source/docutils.conf b/umn/source/docutils.conf new file mode 100644 index 0000000..7cbe4c1 --- /dev/null +++ b/umn/source/docutils.conf @@ -0,0 +1,2 @@ +[html writers] +table-style: table, caption-top \ No newline at end of file diff --git a/umn/source/faqs/how_can_i_update_a_resource_stack.rst b/umn/source/faqs/how_can_i_update_a_resource_stack.rst new file mode 100644 index 0000000..1bd30e9 --- /dev/null +++ b/umn/source/faqs/how_can_i_update_a_resource_stack.rst @@ -0,0 +1,10 @@ +:original_name: en-us_topic_0000002154603105.html + +.. _en-us_topic_0000002154603105: + +How Can I Update a Resource Stack? +================================== + +RFS supports updating stacks. To update a stack, modify your stack template first by modifying its parameter values, or adding or deleting resources specified in the template. Then, click **Update** and select the modified template to update the stack. + +For further information about the stack update procedure, check \ :ref:`Updating the Stack Template or its Parameters `. diff --git a/umn/source/faqs/how_will_i_be_charged_for_using_rfs.rst b/umn/source/faqs/how_will_i_be_charged_for_using_rfs.rst new file mode 100644 index 0000000..3b66753 --- /dev/null +++ b/umn/source/faqs/how_will_i_be_charged_for_using_rfs.rst @@ -0,0 +1,8 @@ +:original_name: en-us_topic_0000002119244806.html + +.. _en-us_topic_0000002119244806: + +How Will I Be Charged for Using RFS? +==================================== + +RFS itself is free of charge. However, when you use a template to deploy your service, RFS will create cloud service resources as specified in the template. These resources are charged at the pricing of the corresponding cloud services. diff --git a/umn/source/faqs/index.rst b/umn/source/faqs/index.rst new file mode 100644 index 0000000..4f96350 --- /dev/null +++ b/umn/source/faqs/index.rst @@ -0,0 +1,20 @@ +:original_name: en-us_topic_0000002154571449.html + +.. _en-us_topic_0000002154571449: + +FAQs +==== + +- :ref:`How Will I Be Charged for Using RFS? ` +- :ref:`How Can I Update a Resource Stack? ` +- :ref:`What Are the Differences Between Creating an Execution Plan, Applying an Execution Plan, Creating a Stack, and Deploying a Stack? ` +- :ref:`Why is the timeout for stack creation six hours? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + how_will_i_be_charged_for_using_rfs + how_can_i_update_a_resource_stack + what_are_the_differences_between_creating_an_execution_plan_applying_an_execution_plan_creating_a_stack_and_deploying_a_stack + why_is_the_timeout_for_stack_creation_six_hours diff --git a/umn/source/faqs/what_are_the_differences_between_creating_an_execution_plan_applying_an_execution_plan_creating_a_stack_and_deploying_a_stack.rst b/umn/source/faqs/what_are_the_differences_between_creating_an_execution_plan_applying_an_execution_plan_creating_a_stack_and_deploying_a_stack.rst new file mode 100644 index 0000000..5405a60 --- /dev/null +++ b/umn/source/faqs/what_are_the_differences_between_creating_an_execution_plan_applying_an_execution_plan_creating_a_stack_and_deploying_a_stack.rst @@ -0,0 +1,14 @@ +:original_name: en-us_topic_0000002154684701.html + +.. _en-us_topic_0000002154684701: + +What Are the Differences Between Creating an Execution Plan, Applying an Execution Plan, Creating a Stack, and Deploying a Stack? +================================================================================================================================= + +**Creating an execution plan:** Generate an execution plan. You can browse the entire plan in advance to evaluate the impact on ongoing resources. Creating an execution plan will not change the stack. The system changes the stack only when the execution plan is executed. + +**Applying an Exection Plan**: Trigger stack deployment based on an execution plan in available state. + +**Creating a stack:** Provide an initial template to create and deploy a stack. + +**Deploying a stack:** Trigger a new deployment by either deploying a stack directly or applying an execution plan. diff --git a/umn/source/faqs/why_is_the_timeout_for_stack_creation_six_hours.rst b/umn/source/faqs/why_is_the_timeout_for_stack_creation_six_hours.rst new file mode 100644 index 0000000..e8136d4 --- /dev/null +++ b/umn/source/faqs/why_is_the_timeout_for_stack_creation_six_hours.rst @@ -0,0 +1,8 @@ +:original_name: en-us_topic_0000002165114252.html + +.. _en-us_topic_0000002165114252: + +Why is the timeout for stack creation six hours? +================================================ + +Since there are some large templates that require a long processing time, the provider will time out in six hours diff --git a/umn/source/glossary.rst b/umn/source/glossary.rst new file mode 100644 index 0000000..8147c35 --- /dev/null +++ b/umn/source/glossary.rst @@ -0,0 +1,8 @@ +:original_name: en-us_topic_0000002119213168.html + +.. _en-us_topic_0000002119213168: + +Glossary +======== + +For details about the glossaries in this document, see `Glossary `__. diff --git a/umn/source/iam_agency.rst b/umn/source/iam_agency.rst new file mode 100644 index 0000000..dc9e35a --- /dev/null +++ b/umn/source/iam_agency.rst @@ -0,0 +1,65 @@ +:original_name: en-us_topic_0000001991890817.html + +.. _en-us_topic_0000001991890817: + +IAM Agency +========== + +By creating an agency, you can share your resources with another account, or delegate an individual or team to manage your resources. You do not need to share your security credentials (the password and access keys) with the delegated party. Instead, the delegated party can log in with its own account credentials and then switches the role to your account and manage your resources. + +With RFS, you can create a stack to bind an agency with a provider and update the binding relationship by updating the stack. + +RFS uses an agency only in resource operation requests, such as creating a stack (triggering deployment), creating an execution plan, deploying a stack, and deleting a stack. The agency applies only to resource operations performed by the bound provider. If the permissions provided by the agency are insufficient, resource operations may fail. + +**Procedure** + +#. Log in to the IAM console. +#. On the IAM console, choose **Agencies** from the navigation pane on the left, and click **Create Agency** in the upper right corner. + + +.. figure:: /_static/images/en-us_image_0000001955571530.png + :alt: **Figure 1** Creating an agency + + **Figure 1** Creating an agency + +3. Enter an agency name, + + - the \ **Agency Type**\ is set to \ **Cloud Service** + + - the **Cloud Service** is set to **RFS**. + + + .. figure:: /_static/images/en-us_image_0000002202025297.png + :alt: **Figure 2** Create an agency + + **Figure 2** Create an agency + +.. caution:: + + The agency name is user-defined. + + If **op_svc_iac** has been used for registration, you are advised to change it to **RFS**. + +4. Click **Next**. The **Authorize Agency** page is displayed. You can grant permissions to the agency on this page. Filter specific permissions and grant them to the agency. + + +.. figure:: /_static/images/en-us_image_0000001955571534.png + :alt: **Figure 3** Selecting policies and roles + + **Figure 3** Selecting policies and roles + +You can determine the permissions to be granted to an agency. OpenTelekom cloud best practices do not advise you to automatically create agencies with the Tenant Administrator permission for users. The best practice is to grant management permissions (including read and write operations) to resources that may be used in a stack. + +5. Set the authorization scope. You can select **All resources** or **Region-specific projects**. + + +.. figure:: /_static/images/en-us_image_0000001991890873.png + :alt: **Figure 4** Authorization scope + + **Figure 4** Authorization scope + +6. Click **OK**. The agency is created. Now you can use it in \ :ref:`Configure the stack. ` + + |image1|\ For more information about IAM Agencies, see: `Cloud Service Agency `__. + +.. |image1| image:: /_static/images/en-us_image_0000001991770693.png diff --git a/umn/source/index.rst b/umn/source/index.rst index a90356d..2ae3e27 100644 --- a/umn/source/index.rst +++ b/umn/source/index.rst @@ -1,3 +1,17 @@ -========================================================== -Welcome to the documentation of resource-formation-service -========================================================== +======================================= +Resource Formation Service - User Guide +======================================= + +.. toctree:: + :maxdepth: 1 + + service_overview/index + managing_stacks/index + managing_templates/index + permission_management/index + auditing + quotas + iam_agency + faqs/index + change_history + glossary diff --git a/umn/source/managing_stacks/creating_a_stack.rst b/umn/source/managing_stacks/creating_a_stack.rst new file mode 100644 index 0000000..11399b4 --- /dev/null +++ b/umn/source/managing_stacks/creating_a_stack.rst @@ -0,0 +1,413 @@ +:original_name: en-us_topic_0000001955571466.html + +.. _en-us_topic_0000001955571466: + +Creating a Stack +================ + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**\ . + + The **Dashboard** page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002160009781.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. There are several ways to start creating a stack + + a. On the **Dashboard** page: + + - click **Create Stack** in the upper right corner. + - click **Create Stack** in the **Select Template** tile of the **Guide to Create a Stack** flow chart. + + b. On the **Stacks** page, click **Create Stack** in the upper right corner. + + + **Figure 2** Creating a stack on Stacks page + + |image2| + + c. On the **Templates** -> **Private Templates** page: + + - click **Create Stack** under the **Operation** column associated with an existing template. + + + .. figure:: /_static/images/en-us_image_0000002194226997.png + :alt: **Figure 3** Creating a stack on Private Templates page + + **Figure 3** Creating a stack on Private Templates page + + - click the name of the desired template to navigate to its details page, and then click **Create Stack** under the **Operation** column associated with a specific template version. + + + .. figure:: /_static/images/en-us_image_0000002194091653.png + :alt: **Figure 4** Creating a stack on Template Details page + + **Figure 4** Creating a stack on Template Details page + +4. .. _en-us_topic_0000001955571466__li7334814113611: + + There are three ways to select a template. + + + .. figure:: /_static/images/en-us_image_0000002194180509.png + :alt: **Figure 5** Selecting a template + + **Figure 5** Selecting a template + + a. Select a template from **Private Templates**: Template name and version selector dropdowns. + + b. Enter a URL of an OBS template: Template URL dropdown. (The URL must contain at least the deployment code file, and the file size cannot exceed 1 MB.) + + Example: https://test-stack-template.obs.eu-de.otc.t-systems.com/main.tf + + c. Upload a local template file or zip by clicking **Add File**\ button. + + .. important:: + + - The .tf, .tf.json, and .zip files are supported. + - At least the deployment code file needs to be uploaded. + - The size of a file cannot exceed 50 KB. + - The size of a decompressed .zip file cannot exceed 1 MB. + + Then click **Next** to go to the parameter configuration page. + + .. caution:: + + - A stack is created using a template. The template must contain the deployment code file which file name extension is tf or tf.json. + - The deployment code file must use the open source HCL syntax. After the file is imported, the corresponding resource configuration table is generated for users to configure resource parameters. This file must be provided in URL or via template upload. + - When using the RFS service, users do not need to specify the "access_key" and "secret_key" fields under the **provider block** in the template. + - RFS only uses the data you upload for resource management. + + The following is an example of uploading a local template file. In this example, the **ecs_test.tf.json** file is uploaded. The template content is as follows: + + .. code-block:: + + { + "terraform": { + "required_providers": { + "opentelekomcloud": { + "source": "opentelekomcloud/provider/opentelekomcloud", + "version": "1.35.13" + } + } + }, + "provider": { + "opentelekomcloud": { + "region": "eu-de", + "insecure": true, + "auth_url": "https://iam.eu-de.otc.t-systems.com/v3", + "tenant_name": "eu-de", + "domain_name": "OTC-EU-DE-xxxxxxxxxxxxxxxxxxxx", + "user_name": "xxxxxxxxxx" + } + }, + "variable": { + "vpc_name": { + "type": "string", + "description": "vpc name", + "default": "rf_test_stack_example_vpc", + "sensitive": true, + "nullable": false + }, + "subnet_name": { + "type": "string", + "description": "subnet name", + "default": "rf_test_stack_example_subnet" + }, + "ecs_name": { + "type": "string", + "description": "ecs name", + "default": "rf_test_stack_example_ecs" + }, + "compute_keypair_name": { + "type": "string", + "description": "ecs compute key pair name", + "default": "rf_test_stack_example_keypair" + }, + "storage_volume_name": { + "type": "string", + "description": "storage volume name", + "default": "rf_test_stack_example_volume" + } + }, + "resource": { + "opentelekomcloud_vpc_v1": { + "rf_doc_vpc": { + "name": "${var.vpc_name}", + "cidr": "192.168.0.0/16" + } + }, + "opentelekomcloud_vpc_subnet_v1": { + "rf_doc_subnet": { + "name": "${var.subnet_name}", + "vpc_id": "${opentelekomcloud_vpc_v1.rf_doc_vpc.id}", + "cidr": "192.168.1.0/24", + "gateway_ip": "192.168.1.1" + } + }, + "opentelekomcloud_compute_keypair_v2": { + "rf_doc_keypair": { + "name": "${var.compute_keypair_name}" + } + }, + "opentelekomcloud_compute_instance_v2": { + "rf_doc_ecs": { + "name": "${var.ecs_name}", + "flavor_id": "s2.large.1", + "image_id": "bf0f71bd-f08a-4cd0-9594-ca2caa00b9d7", + "availability_zone": "eu-de-01", + "key_pair": "${opentelekomcloud_compute_keypair_v2.rf_doc_keypair.name}", + "security_groups": ["default"], + "network": { + "uuid": "${opentelekomcloud_vpc_subnet_v1.rf_doc_subnet.id}" + } + } + }, + "opentelekomcloud_blockstorage_volume_v2": { + "rf_doc_volume": { + "name": "${var.storage_volume_name}", + "size": 4, + "availability_zone": "eu-de-01" + } + }, + "opentelekomcloud_compute_volume_attach_v2": { + "rf_doc_volume_attach": { + "instance_id": "${opentelekomcloud_compute_instance_v2.rf_doc_ecs.id}", + "volume_id": "${opentelekomcloud_blockstorage_volume_v2.rf_doc_volume.id}" + } + } + }, + "output": { + "ecs_address": { + "value": "${opentelekomcloud_compute_instance_v2.rf_doc_ecs.access_ip_v4}", + "description": "The ecs private address." + }, + "ecs_id": { + "value": "${opentelekomcloud_compute_instance_v2.rf_doc_ecs.id}", + "description": "The ecs resource id." + } + } + } + + .. caution:: + + The sample template contains charged resources. Check whether resources need to be enabled before using the template. + + The template consists of eight parts: + + - **opentelekomcloud_vpc_v1** in **resource** indicates VPC information. + - **opentelekomcloud_vpc_subnet_v1** in **resource** indicates information about a subnet defined in the VPC. + - **opentelekomcloud_compute_keypair_v2** in **resource** indicates information about compute keypair defined in the template. + - **opentelekomcloud_compute_instance_v2** in **resource** indicates information about an ECS defined in the template. + - **opentelekomcloud_blockstorage_volume_v2** in **resource** indicates information about an EVS storage volume defined in the template. + - **opentelekomcloud_compute_volume_attach_v2** in **resource** indicates the binding relationship between EVS storage volume and ECS. + - **variable** indicates variables defined by users in templates during stack creation and deployment. + - **output** defines the outputs of templates. After a stack is created, its output is generated based on the definition and displayed on the :ref:`Outputs ` tab page. + + For detailed usage of other resources, please refer to `OpenTelekom Cloud Provider `__. + +5. .. _en-us_topic_0000001955571466__li43272049164914: + + Configure parameters + + On the parameter configuration page, you can modify the stack name and description and configure the template parameters. + + .. caution:: + + The stack name must start with a letter and can contain a maximum of 128 characters, including letters, digits, underscores (_), and hyphens (-). The name must be unique. + + A stack description can contain a maximum of 255 characters. + + + .. figure:: /_static/images/en-us_image_0000002120705156.png + :alt: **Figure 6** Configuring parameters + + **Figure 6** Configuring parameters + + Parameters whose **nullable** field is set to **false** in template are marked with a red asterisk (``*``) as mandatory. Valid values must be set to these parameters. + + If there are variables whose **sensitive** field is set to **true** in template, KMS encryption can be selected, as shown in :ref:`Figure Encrypt requirements `. If encryption is enabled, RFS will use KMS to encrypt those senstitive parameters to ensure their secure transmission and storage. + + .. _en-us_topic_0000001955571466__fig15774183016141: + + .. figure:: /_static/images/en-us_image_0000002156056533.png + :alt: **Figure 7** Encrypt requirements + + **Figure 7** Encrypt requirements + + If a value is invalid, the corresponding text box will turn red (as shown in :ref:`Figure 8 `) and page redirection will not be triggered after you click **Next**. + + .. _en-us_topic_0000001955571466____d0e644: + + .. figure:: /_static/images/en-us_image_0000001991770641.png + :alt: **Figure 8** Text box with an invalid value + + **Figure 8** Text box with an invalid value + + Check whether the default VPC, subnet, and ECS names used on this page already exist on the corresponding consoles. If the names already exist, change them to unique ones to prevent creation failures. + + Then click **Next** and the **Configure Stack** page is displayed. + +6. .. _en-us_topic_0000001955571466__li459mcpsimp: + + Configure the stack. + + + .. figure:: /_static/images/en-us_image_0000002158816238.png + :alt: **Figure 9** Configuring the stack + + **Figure 9** Configuring the stack + + **IAM Agency (Optional)**: An agency can clearly define operation permissions of RFS (such as creation, update, and deletion) on stack resources. If the agency permissions are insufficient, subsequent operations may fail. For more details of how to create agency, see :ref:`create an agency `. + + **Deletion Protection**: prevents the stack from being deleted accidentally. After a stack is created, You can modify it on the stack details page. + + **Auto-Rollback**: If auto-rollback is enabled, the stack automatically rolls back to the previous successful resource status when an operation fails. + + After the stack is created, you can modify the stack configurations on its details page, see \ :ref:`Modifying the basic parameters of a Stack `. + + Click **Next** to go to the **Confirm Configurations** page. + + + .. figure:: /_static/images/en-us_image_0000002158975806.png + :alt: **Figure 10** Confirm Configurations + + **Figure 10** Confirm Configurations + +7. .. _en-us_topic_0000001955571466__li7775101171312: + + Check the configuration and make sure everything is set correctly. + + After you confirm the configurations, you can click either **Create Execution Plan** or **Directly Deploy Stack**. + + - If you click **Directly Deploy Stack**, a :ref:`confirmation dialog box ` will be displayed. + + .. _en-us_topic_0000001955571466__fig38972020557: + + .. figure:: /_static/images/en-us_image_0000002156063229.png + :alt: **Figure 11** Directly deploy stack + + **Figure 11** Directly deploy stack + + a. Click **Yes**. A new stack is generated and its status is **Deployment In Progress**, as shown in :ref:`Figure 12 `. And it will redirect to the stack events page, as shown in :ref:`Figure Stack Events `. + + .. _en-us_topic_0000001955571466____d0e756: + + **Figure 12** Deployment in progress + + |image3| + + .. _en-us_topic_0000001955571466__fig173401257402: + + .. figure:: /_static/images/en-us_image_0000002120746402.png + :alt: **Figure 13** Stack Events + + **Figure 13** Stack Events + + b. If everything goes well, the status will change to **Deployment Complete**, as shown in :ref:`Figure Deployment complete `. + + .. _en-us_topic_0000001955571466__fig73237820229: + + **Figure 14** Deployment complete + + |image4| + + - If you click **Create Execution Plan**, a dialog box of creating execution plan will be displayed. In this dialog box, you can set the name and description of the execution plan. + + + .. figure:: /_static/images/en-us_image_0000002158816218.png + :alt: **Figure 15** Create Execution Plan dialog box + + **Figure 15** Create Execution Plan dialog box + + .. caution:: + + The execution plan name must start with a letter and can contain a maximum of 128 characters, including only letters, digits, underscores (_), and hyphens (-). + + a. Click **OK**. The **Execution Plans** tab page is displayed. + + b. Wait until the execution plan is created and refresh the page. The execution plan status will change to **Available**, as shown in :ref:`Figure Execution Plan Available `. + + .. _en-us_topic_0000001955571466__fig432318842212: + + **Figure 16** Execution Plan Available + + |image5| + + c. Return to the stack list page. A stack is generated and its stack status is **Creation Complete**, as shown in :ref:`Figure 17 `. + + .. _en-us_topic_0000001955571466____d0e813: + + **Figure 17** Stack list + + |image6| + + .. caution:: + + **Creating an execution plan** can preview the resource attribute changes of the entire stack and evaluate the impact. If the execution plan meets your expectations, you can execute the plan. Creating an execution plan does not incur fees. The system changes your stack only when you execute the plan. + + d. Go back to the **Execution Plans** tab page of the stack and click **Deploy** in the **Operation** column of the execution plan to deploy it, as shown in :ref:`Figure 18 `. + + .. _en-us_topic_0000001955571466____d0e835: + + .. figure:: /_static/images/en-us_image_0000002120743398.png + :alt: **Figure 18** Execution plan dialog box + + **Figure 18** Execution plan dialog box + + #. In the **Execution Plan** dialog box, click **Execute**. A message indicating that the execution plan is being deployed is displayed in the upper right corner. Return to the stack list page. The stack status is **Deployment In Progress**, as shown in :ref:`Figure Deployment in progress `. + + .. _en-us_topic_0000001955571466__fig65231214111516: + + .. figure:: /_static/images/en-us_image_0000002156141613.png + :alt: **Figure 19** Deployment in progress + + **Figure 19** Deployment in progress + + #. Then, the stack status changes to **Deployment Complete**, as shown in :ref:`Figure 20 `. + + .. _en-us_topic_0000001955571466____d0e866: + + **Figure 20** Deployment complete + + |image7| + + e. On the **Execution Plans** tab page of the stack details page, the execution plan status is **Applied**, as shown in :ref:`Figure 21 `. + + .. _en-us_topic_0000001955571466____d0e882: + + .. figure:: /_static/images/en-us_image_0000002120901494.png + :alt: **Figure 21** Applied + + **Figure 21** Applied + +8. Click the **Resources** tab. The resource list shows that resources of the stack are deployed, as shown in :ref:`Figure 22 `. + + .. _en-us_topic_0000001955571466____d0e895: + + **Figure 22** Resources deployed + + |image8| + + You can view additional details on the console of the corresponding cloud service. (:ref:`Figure ECS `\ shows the deployed resources on the ECS console for the above example). + + .. _en-us_topic_0000001955571466__fig1268133163913: + + .. figure:: /_static/images/en-us_image_0000002120901474.png + :alt: **Figure 23** ECS + + **Figure 23** ECS + +.. |image1| image:: /_static/images/en-us_image_0000002194091645.png +.. |image2| image:: /_static/images/en-us_image_0000002158650788.png +.. |image3| image:: /_static/images/en-us_image_0000002120901486.png +.. |image4| image:: /_static/images/en-us_image_0000002120743394.png +.. |image5| image:: /_static/images/en-us_image_0000002156064705.png +.. |image6| image:: /_static/images/en-us_image_0000002158975566.png +.. |image7| image:: /_static/images/en-us_image_0000002156063237.png +.. |image8| image:: /_static/images/en-us_image_0000002120743374.png diff --git a/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/creating_an_execution_plan.rst b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/creating_an_execution_plan.rst new file mode 100644 index 0000000..28840c7 --- /dev/null +++ b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/creating_an_execution_plan.rst @@ -0,0 +1,50 @@ +:original_name: en-us_topic_0000002121580000.html + +.. _en-us_topic_0000002121580000: + +Creating an Execution Plan +========================== + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002160009821.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose **Stacks**. + + + .. figure:: /_static/images/en-us_image_0000002159891457.png + :alt: **Figure 2** RFS Stacks + + **Figure 2** RFS Stacks + +#. To create an execution plan for an existing stack, you can use either of the following ways: + + - Go to the stack list page, locate the target stack, and click **Update** in the **Operation** column. + - Alternatively, go to the stack details page and click **Update Template/Parameter** in the upper right corner. + + + .. figure:: /_static/images/en-us_image_0000002124769894.png + :alt: **Figure 3** Page for creating an execution plan + + **Figure 3** Page for creating an execution plan + + The subsequent steps are same as those in :ref:`Updating the Stack Template or its Parameters `, except that you need to click **Create Execution Plan** instead of **Directly Deploy Stack** in the \ **Confirm Configurations**\ step. + + Then, an execution plan is generated, but the stack is not directly deployed. If you create multiple execution plans, they will exist in the same stack, as shown in :ref:`Figure 4 `. + + .. _en-us_topic_0000002121580000____d0e1136: + + **Figure 4** Execution plan list + + |image2| + +.. |image1| image:: /_static/images/en-us_image_0000002158976894.png +.. |image2| image:: /_static/images/en-us_image_0000002124611738.png diff --git a/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/deleting_an_execution_plan.rst b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/deleting_an_execution_plan.rst new file mode 100644 index 0000000..852339a --- /dev/null +++ b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/deleting_an_execution_plan.rst @@ -0,0 +1,49 @@ +:original_name: en-us_topic_0000002156780069.html + +.. _en-us_topic_0000002156780069: + +Deleting an Execution Plan +========================== + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002159891445.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose **Stacks**. + + + .. figure:: /_static/images/en-us_image_0000002124611726.png + :alt: **Figure 2** RFS Stacks + + **Figure 2** RFS Stacks + +#. Click the name of the desired stack to navigate to the **Execution Plans** tab. + + + **Figure 3** Execution plan list + + |image2| + +#. If an execution plan is no longer used, click **Delete** in the **Operation** column. In the Delete Execution Plan dialog window, click \ **Yes**\ to confirm the deletion, as shown in :ref:`Figure Deleting an execution plan `. + + .. _en-us_topic_0000002156780069____d0e1163: + + .. figure:: /_static/images/en-us_image_0000002124769902.png + :alt: **Figure 4** Deleting an execution plan + + **Figure 4** Deleting an execution plan + +.. warning:: + + Execution plans cannot be restored once deleted. Exercise caution when performing this operation. + +.. |image1| image:: /_static/images/en-us_image_0000002194183665.png +.. |image2| image:: /_static/images/en-us_image_0000002160009817.png diff --git a/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/deploying_an_execution_plan.rst b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/deploying_an_execution_plan.rst new file mode 100644 index 0000000..d42685b --- /dev/null +++ b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/deploying_an_execution_plan.rst @@ -0,0 +1,45 @@ +:original_name: en-us_topic_0000002121421892.html + +.. _en-us_topic_0000002121421892: + +Deploying an Execution Plan +=========================== + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002159891453.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose **Stacks**. + + + .. figure:: /_static/images/en-us_image_0000002124611734.png + :alt: **Figure 2** RFS Stacks + + **Figure 2** RFS Stacks + +#. Click the name of the desired stack and navigate to the **Execution Plans** tab. + + + **Figure 3** Execution plan list + + |image2| + +#. Locate the row that contains the desired execution plan and click **Deploy** in the **Operation** column. Alternatively, you can click the name of the desired execution plan to navigate to its details page and then click **Deploy** in the **Basic Information** section. + + After an execution plan is executed, its status changes from Available to Applied and the Deploy options will no longer be available for the plan. + +.. caution:: + + - Execution plan can only be deployed once. However, if it fails, it is allowed to retry the deployment on the Stack List page by clicking on the \ **Continue Deployment**\ link under the \ **Operation**\ column. + - If there are multiple execution plans in the available state, deploying one of them will cause the other execution plans to expire, even though they remain in the available state. + +.. |image1| image:: /_static/images/en-us_image_0000002194218013.png +.. |image2| image:: /_static/images/en-us_image_0000002124769898.png diff --git a/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/index.rst b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/index.rst new file mode 100644 index 0000000..a0ae8d9 --- /dev/null +++ b/umn/source/managing_stacks/creating_deploying_and_deleting_an_execution_plan/index.rst @@ -0,0 +1,18 @@ +:original_name: en-us_topic_0000001955571470.html + +.. _en-us_topic_0000001955571470: + +Creating, Deploying and Deleting an Execution Plan +================================================== + +- :ref:`Creating an Execution Plan ` +- :ref:`Deploying an Execution Plan ` +- :ref:`Deleting an Execution Plan ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + creating_an_execution_plan + deploying_an_execution_plan + deleting_an_execution_plan diff --git a/umn/source/managing_stacks/deleting_a_stack.rst b/umn/source/managing_stacks/deleting_a_stack.rst new file mode 100644 index 0000000..b236c35 --- /dev/null +++ b/umn/source/managing_stacks/deleting_a_stack.rst @@ -0,0 +1,80 @@ +:original_name: en-us_topic_0000001991890809.html + +.. _en-us_topic_0000001991890809: + +Deleting a Stack +================ + +If a stack is no longer needed, you can perform the following steps to delete it: + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002157142509.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose **Stacks**. + + + .. figure:: /_static/images/en-us_image_0000002121742716.png + :alt: **Figure 2** RFS Stacks + + **Figure 2** RFS Stacks + +4. (Optional) Check whether the deletion protection is enabled for the stack. + + Those stacks, where the deletion protection is enabled, cannot be deleted. If you attempt to delete such stack, an error message will be displayed, as shown in :ref:`Figure Deletion failed `. + + .. _en-us_topic_0000001991890809____d0e1513: + + .. figure:: /_static/images/en-us_image_0000002121667372.png + :alt: **Figure 3** Deletion failed + + **Figure 3** Deletion failed + + a. Click the name of the desired stack to view its details and check the **Deletion Protection** value in the **Basic Information** tab. + + + .. figure:: /_static/images/en-us_image_0000002156909017.png + :alt: **Figure 4** Deletion protection + + **Figure 4** Deletion protection + + b. If it is enabled, click **Edit** in the top right corner of the **Basic Information** tab, disable the deletion protection and click **Save** in the top right corner of the **Basic Information** tab. + + + .. figure:: /_static/images/en-us_image_0000002121663600.png + :alt: **Figure 5** Edit basic information + + **Figure 5** Edit basic information + +5. On the stack list page, locate the stack to be deleted and click **Delete** in the **Operation** column. + + Alternatively, go to the stack details page by clicking the name of the stack and click **Delete** in the upper right corner + +6. In the dialog box displayed, as shown in \ :ref:`Figure Dialog box for deleting a stack `, + + a. select the desired deletion option: + + If you choose to delete resources, RFS will destroy all the resources in the stack. If you choose to retain resources, we will only delete the stack without destroying the resources. Therefore, these resources will no longer be managed by RFS. + + b. and confirm the deletion by entering **Delete** in the text box and click **OK**. + + .. _en-us_topic_0000001991890809__fig172072292519: + + .. figure:: /_static/images/en-us_image_0000002166698096.png + :alt: **Figure 6** Dialog box for deleting a stack + + **Figure 6** Dialog box for deleting a stack + +.. warning:: + + Stacks cannot be restored after being deleted. Exercise caution when performing this operation. + +.. |image1| image:: /_static/images/en-us_image_0000002158817102.png diff --git a/umn/source/managing_stacks/index.rst b/umn/source/managing_stacks/index.rst new file mode 100644 index 0000000..b80620f --- /dev/null +++ b/umn/source/managing_stacks/index.rst @@ -0,0 +1,26 @@ +:original_name: en-us_topic_0000002119213160.html + +.. _en-us_topic_0000002119213160: + +Managing Stacks +=============== + +- :ref:`Creating a Stack ` +- :ref:`Viewing Stacks ` +- :ref:`Viewing Stack Details ` +- :ref:`Modifying the basic parameters of a Stack ` +- :ref:`Updating the Stack Template or its Parameters ` +- :ref:`Creating, Deploying and Deleting an Execution Plan ` +- :ref:`Deleting a Stack ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + creating_a_stack + viewing_stacks + viewing_stack_details + modifying_the_basic_parameters_of_a_stack + updating_the_stack_template_or_its_parameters + creating_deploying_and_deleting_an_execution_plan/index + deleting_a_stack diff --git a/umn/source/managing_stacks/modifying_the_basic_parameters_of_a_stack.rst b/umn/source/managing_stacks/modifying_the_basic_parameters_of_a_stack.rst new file mode 100644 index 0000000..02939c7 --- /dev/null +++ b/umn/source/managing_stacks/modifying_the_basic_parameters_of_a_stack.rst @@ -0,0 +1,42 @@ +:original_name: en-us_topic_0000002154604281.html + +.. _en-us_topic_0000002154604281: + +Modifying the basic parameters of a Stack +========================================= + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002160009777.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose **Stacks**\ on the left, you can see all the stacks created under the current account, as shown in \ :ref:`Figure RFS Stacks `\ . + + .. _en-us_topic_0000002154604281__fig89226538129: + + **Figure 2** RFS Stacks + + |image2| + +#. Click the name of the desired stack to modify. On the **Stack Detail** page, under **Basic Information** function module, you can click the **Edit** button in the top-right corner to edit the **Basic Information**. + + It supports changing the stack's **Agency**, modifying the stack's **Description**, as well as toggling the **Auto-Rollback** and **Deletion Protection** settings, as shown in :ref:`Figure Editing Basic Information `. + + .. _en-us_topic_0000002154604281__fig14388172452918: + + .. figure:: /_static/images/en-us_image_0000002158978150.png + :alt: **Figure 3** Editing Basic Information + + **Figure 3** Editing Basic Information + +#. After editing, click **Save** in the top-right corner. + +.. |image1| image:: /_static/images/en-us_image_0000002160693600.png +.. |image2| image:: /_static/images/en-us_image_0000002124769866.png diff --git a/umn/source/managing_stacks/updating_the_stack_template_or_its_parameters.rst b/umn/source/managing_stacks/updating_the_stack_template_or_its_parameters.rst new file mode 100644 index 0000000..060fdf8 --- /dev/null +++ b/umn/source/managing_stacks/updating_the_stack_template_or_its_parameters.rst @@ -0,0 +1,74 @@ +:original_name: en-us_topic_0000001991770625.html + +.. _en-us_topic_0000001991770625: + +Updating the Stack Template or its Parameters +============================================= + +.. caution:: + + Stack change records are not available. If you want to view change details, you are recommended to create an execution plan. + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002124769858.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, click **Stacks**\ on the left, you can see all the stacks created under the current account, as shown in \ :ref:`Figure RFS Stacks `\ . + + .. _en-us_topic_0000001991770625__fig89226538129: + + **Figure 2** RFS Stacks + + |image2| + +#. You can update the stack template or its parameters in either of the following ways: + + - Go to the stack list page, locate the target stack, and click **Update** in the **Operation** column. + - Alternatively, go to the stack details page and click **Update Template/Parameter** in the upper right corner. + + You can change the current template associated with the stack or modify the parameter configuration of the current template. + + + .. figure:: /_static/images/en-us_image_0000002124611694.png + :alt: **Figure 3** Selecting a template + + **Figure 3** Selecting a template + + You can select **Current Template** or **Replace Current Template** (use a new template) to update the stack. + + a. Using the current template + + - After you select Current Template, click **Next** to go to the **Configure Parameters** page and modify parameters on it, as shown in :ref:`Figure 4 `. For further details, see \ :ref:`Creating a Stack `\ . + + .. _en-us_topic_0000001991770625____d0e1035: + + .. figure:: /_static/images/en-us_image_0000002124769882.png + :alt: **Figure 4** Configuring parameters + + **Figure 4** Configuring parameters + + - Click **Next** to go to the **Confirm Configurations** page, as shown in :ref:`Figure 5 `. + + .. _en-us_topic_0000001991770625____d0e1051: + + .. figure:: /_static/images/en-us_image_0000002160009809.png + :alt: **Figure 5** Confirming configurations + + **Figure 5** Confirming configurations + + - Click **Directly Deploy Stack** or **Create Execution Plan**. For further details, please follow the procedure in \ :ref:`Creating a Stack `\ . + + b. Replacing the current template + + For further details about the configuration steps, please follow the procedure in \ :ref:`Creating a Stack `\ . + +.. |image1| image:: /_static/images/en-us_image_0000002158817118.png +.. |image2| image:: /_static/images/en-us_image_0000002159891413.png diff --git a/umn/source/managing_stacks/viewing_stack_details.rst b/umn/source/managing_stacks/viewing_stack_details.rst new file mode 100644 index 0000000..7f6d839 --- /dev/null +++ b/umn/source/managing_stacks/viewing_stack_details.rst @@ -0,0 +1,138 @@ +:original_name: en-us_topic_0000001991770629.html + +.. _en-us_topic_0000001991770629: + +Viewing Stack Details +===================== + +To navigate the details page of a stack, perform the following steps: + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002121673112.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose **Stacks**. + + + .. figure:: /_static/images/en-us_image_0000002156993381.png + :alt: **Figure 2** RFS Stacks + + **Figure 2** RFS Stacks + +#. Click the name of the desired stack to view its details and select the tab needed. + +Function modules on the stack details page +------------------------------------------ + +#. **Basic Information**: displays basic information about the stack, such as \ **Stack Name**\ , \ **Stack ID**\ , \ **Status**\ , \ **Auto-Rollback**\ and \ **Deletion Protection**\ settings, etc, as shown in :ref:`Figure 3 `. + + .. _en-us_topic_0000001991770629____d0e1560: + + **Figure 3** Basic information + + |image2| + +#. **Resources**: displays the elements of the stack, such as applications, cloud services or resources generated during deployment, as shown in :ref:`Figure 4 `. + + .. _en-us_topic_0000001991770629____d0e1571: + + **Figure 4** Resources + + |image3| + +#. .. _en-us_topic_0000001991770629__li167036103014: + + **Outputs**: displays the output parameters and their values defined in the stack template, as shown in :ref:`Figure 5 `. + + .. _en-us_topic_0000001991770629____d0e1595: + + **Figure 5** Outputs + + |image4| + +#. **Events**: displays log information about stack events (for example stack creation, or deployment related events), so that you can monitor the stack operation progress. The events are sorted in chronological order with the latest event being displayed at the top. + + For example, :ref:`Figure 6 ` shows the creation process of each resource. + + You can filter events by resource name or resource type in the top-right corner, as shown in :ref:`Figure Filter Events `. + + .. _en-us_topic_0000001991770629____d0e1583: + + **Figure 6** Events + + |image5| + + .. _en-us_topic_0000001991770629__fig1958919547213: + + .. figure:: /_static/images/en-us_image_0000002121519232.png + :alt: **Figure 7** Filter Events + + **Figure 7** Filter Events + +#. **Template**: displays the latest template content, what has been deployed with the stack, as shown in :ref:`Figure 8 `. + + .. _en-us_topic_0000001991770629____d0e1606: + + **Figure 8** Template + + |image6| + +#. **Execution Plans**: displays the different execution plans associated with the stack, as shown in :ref:`Figure 9 `. To see how to deploy or delete an execution plan, check :ref:`Creating, Deploying and Deleting an Execution Plan `. + + .. _en-us_topic_0000001991770629____d0e1629: + + **Figure 9** Execution plans + + |image7| + + You can filter execution plans by execution plans name in the top-right corner, as shown in :ref:`Figure Filter Execution plans `. + + .. _en-us_topic_0000001991770629__fig17920107173512: + + .. figure:: /_static/images/en-us_image_0000002121681612.png + :alt: **Figure 10** Filter Execution plans + + **Figure 10** Filter Execution plans + + :ref:`Table 1 ` describes the possible execution plan statuses. + + .. _en-us_topic_0000001991770629____d0e458: + + .. table:: **Table 1** Execution plan statuses + + +----------------------+-------------------------------------------------------------+ + | Status | Description | + +======================+=============================================================+ + | Creation In Progress | Execution plan creation is in progress. | + +----------------------+-------------------------------------------------------------+ + | Creation Failed | Execution plan creation failed. | + +----------------------+-------------------------------------------------------------+ + | Available | The execution plan is created and ready for the deployment. | + +----------------------+-------------------------------------------------------------+ + | Applied | The execution plan has been applied. | + +----------------------+-------------------------------------------------------------+ + + To check the details of an execution plan, you can click the execution plan name to open its details, as shown in :ref:`Figure 11 `. + + .. _en-us_topic_0000001991770629____d0e1639: + + **Figure 11** Execution plan details + + |image8| + +.. |image1| image:: /_static/images/en-us_image_0000002158817114.png +.. |image2| image:: /_static/images/en-us_image_0000002120707020.png +.. |image3| image:: /_static/images/en-us_image_0000002155947169.png +.. |image4| image:: /_static/images/en-us_image_0000002120549060.png +.. |image5| image:: /_static/images/en-us_image_0000002155947473.png +.. |image6| image:: /_static/images/en-us_image_0000002156029369.png +.. |image7| image:: /_static/images/en-us_image_0000002155948217.png +.. |image8| image:: /_static/images/en-us_image_0000002121525200.png diff --git a/umn/source/managing_stacks/viewing_stacks.rst b/umn/source/managing_stacks/viewing_stacks.rst new file mode 100644 index 0000000..57e0493 --- /dev/null +++ b/umn/source/managing_stacks/viewing_stacks.rst @@ -0,0 +1,49 @@ +:original_name: en-us_topic_0000002154685877.html + +.. _en-us_topic_0000002154685877: + +Viewing Stacks +============== + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The **Dashboard** page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002124611690.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose **Stacks**\ on the left, you can see all the stacks created under the current account, as shown in \ :ref:`Figure RFS Stacks `\ . + + .. _en-us_topic_0000002154685877__fig89226538129: + + **Figure 2** RFS Stacks + + |image2| + +:ref:`Table 1 ` describes the possible stack statuses. + +.. _en-us_topic_0000002154685877____d0e380: + +.. table:: **Table 1** Stack statuses + + ====================== ============================================ + Status Description + ====================== ============================================ + Creation Complete The stack has been created but not deployed. + Deployment In Progress Stack deployment is in progress. + Deployment Complete The stack has been deployed. + Deployment Failed The stack deployment failed. + Deletion In Progress Stack deletion is in progress. + Deletion Failed Stack deletion failed. + Rollback In Progress Stack rollback is in progress. + Rollback Failed Stack rollback failed. + Rollback Complete The stack has been rolled back. + ====================== ============================================ + +.. |image1| image:: /_static/images/en-us_image_0000002194183289.png +.. |image2| image:: /_static/images/en-us_image_0000002159891417.png diff --git a/umn/source/managing_templates/creating_a_stack_from_a_template.rst b/umn/source/managing_templates/creating_a_stack_from_a_template.rst new file mode 100644 index 0000000..85e271f --- /dev/null +++ b/umn/source/managing_templates/creating_a_stack_from_a_template.rst @@ -0,0 +1,45 @@ +:original_name: en-us_topic_0000002046584002.html + +.. _en-us_topic_0000002046584002: + +Creating a Stack from a Template +================================ + +RFS supports linkage between the stack and the template in console. Users can directly select templates to create and deploy a stack. + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002157215021.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . You can see all the templates created under the current account. + + + .. figure:: /_static/images/en-us_image_0000002158983306.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + +#. Click **Create Stack** in the **Operation** column of the desired template to initiate the creation of a new stack based on the latest template version. You will be automatically redirected to the \ **Create Stack**\ page, where the latest version of the current template is preselected by default as shown in :ref:`Figure 3 `. + + .. _en-us_topic_0000002046584002__fig18834113282211: + + .. figure:: /_static/images/en-us_image_0000002200348205.png + :alt: **Figure 3** Selecting Template + + **Figure 3** Selecting Template + + For more information about the entire stack creation procedure, check \ :ref:`Creating a Stack `\ . + + .. note:: + + Creating a stack from a template will by default use the latest template version. If you want to use other versions, please go to \ :ref:`View the Template Details `\ . + +.. |image1| image:: /_static/images/en-us_image_0000002158979842.png diff --git a/umn/source/managing_templates/creating_a_template.rst b/umn/source/managing_templates/creating_a_template.rst new file mode 100644 index 0000000..06408ab --- /dev/null +++ b/umn/source/managing_templates/creating_a_template.rst @@ -0,0 +1,86 @@ +:original_name: en-us_topic_0000002046740822.html + +.. _en-us_topic_0000002046740822: + +Creating a Template +=================== + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002121900840.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . + + + .. figure:: /_static/images/en-us_image_0000002158823486.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + +#. On the \ **Private Templates**\ page, click \ **Create Template**\ in the upper right corner. + + + **Figure 3** Creating a template + + |image2| + +5. On the **Create Template** page, select the **Source**: + + a. **URL**\ : Enter a URL of an OBS template. When the OBS URL is correct, the corresponding template content from OBS will be displayed in the content section below. (The URL must contain at least the deployment code file or zip, and the file size cannot exceed 1 MB.) + + + .. figure:: /_static/images/en-us_image_0000002158820394.png + :alt: **Figure 4** Template URL + + **Figure 4** Template URL + + b. **Upload Template**: Upload a local template file or zip. After your upload, the corresponding template content will be displayed in the content section below. (The files in the format of .tf, .tf.json, and .zip are supported. At least the deployment code file needs to be uploaded. The size of a file cannot exceed 50 KB. The size of a decompressed .zip file cannot exceed 1 MB.) + + + .. figure:: /_static/images/en-us_image_0000002194187417.png + :alt: **Figure 5** Upload template + + **Figure 5** Upload template + + c. **Input Template**: Input template. You can create, rename, and delete files and folders here, which helps in organizing the template file structure better, and you can also export the templates. + + + .. figure:: /_static/images/en-us_image_0000002157144325.png + :alt: **Figure 6** Input template + + **Figure 6** Input template + +6. Next, you can modify the template name, description and version description, as shown in :ref:`Figure 7 `. + + .. _en-us_topic_0000002046740822__fig197685819172: + + **Figure 7** Configuring parameters + + |image3| + + .. note:: + + - The template name must start with a letter and can contain a maximum of 128 characters, including letters, digits, underscores (_), and hyphens (-). The name must be unique. + - The template name cannot be changed after the template is created. + - A template description can contain a maximum of 1024 characters. + - A template version description can contain a maximum of 1024 characters. + +7. Click **Create Now** to create a template. + + + .. figure:: /_static/images/en-us_image_0000002158823498.png + :alt: **Figure 8** Template list + + **Figure 8** Template list + +.. |image1| image:: /_static/images/en-us_image_0000002194220973.png +.. |image2| image:: /_static/images/en-us_image_0000002157056257.png +.. |image3| image:: /_static/images/en-us_image_0000002121739696.png diff --git a/umn/source/managing_templates/deleting_a_template.rst b/umn/source/managing_templates/deleting_a_template.rst new file mode 100644 index 0000000..173184d --- /dev/null +++ b/umn/source/managing_templates/deleting_a_template.rst @@ -0,0 +1,62 @@ +:original_name: en-us_topic_0000002082821521.html + +.. _en-us_topic_0000002082821521: + +Deleting a Template +=================== + +If a template is no longer in use, RFS supports deleting it. You can choose to delete the templates one by one or in batches. + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002157215029.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . You can see all the templates created under the current account. + + + .. figure:: /_static/images/en-us_image_0000002158823542.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + +#. You can delete a single template or multiple templates in batches: + + a. To delete a single template, click \ **More**\ -> **Delete**\ in the \ **Operation**\ column. + + + .. figure:: /_static/images/en-us_image_0000002158983474.png + :alt: **Figure 3** RFS Private Templates + + **Figure 3** RFS Private Templates + + b. To delete multiple templates in batches, select the desired templates and click the \ **Delete**\ in the upper left corner above the template table. + + + .. figure:: /_static/images/en-us_image_0000002194191125.png + :alt: **Figure 4** RFS Private Templates + + **Figure 4** RFS Private Templates + +#. In the dialog box displayed, click **Yes** as shown in :ref:`Figure Dialog box for deleting a template `. The template(s) and all versions will be deleted. + + .. _en-us_topic_0000002082821521__fig199231122185119: + + .. figure:: /_static/images/en-us_image_0000002166704124.png + :alt: **Figure 5** Dialog box for deleting a template + + **Figure 5** Dialog box for deleting a template + + .. caution:: + + - Deleting a template will delete all versions in the template and the deleted versions cannot be restored. Exercise caution when performing this operation. + - If you just want to delete a template version, please go to \ :ref:`View the Template Details `\ . + +.. |image1| image:: /_static/images/en-us_image_0000002194186605.png diff --git a/umn/source/managing_templates/exporting_a_template.rst b/umn/source/managing_templates/exporting_a_template.rst new file mode 100644 index 0000000..18d9387 --- /dev/null +++ b/umn/source/managing_templates/exporting_a_template.rst @@ -0,0 +1,45 @@ +:original_name: en-us_topic_0000002082662957.html + +.. _en-us_topic_0000002082662957: + +Exporting a Template +==================== + +RFS supports exporting an existing template to local computer. + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002121776834.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . You can see all the templates created under the current account. + + + .. figure:: /_static/images/en-us_image_0000002194189973.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + +#. Click the **More** -> **Export** in the **Operation** column of the desired template to request an export from the latest version of the template. + + + .. figure:: /_static/images/en-us_image_0000002158823458.png + :alt: **Figure 3** RFS Private Templates + + **Figure 3** RFS Private Templates + + Next, the template will be automatically downloaded to local computer. + + .. note:: + + - The naming convention of the export file is: "{TEMPLATE_NAME}-{TEMPLATE_VERSION}" and the file extension will be ".zip". + - The latest version of the template will be exported by default. If you want to export other versions, please go to \ :ref:`View the Template Details `\ . + +.. |image1| image:: /_static/images/en-us_image_0000002158820094.png diff --git a/umn/source/managing_templates/index.rst b/umn/source/managing_templates/index.rst new file mode 100644 index 0000000..9d7252a --- /dev/null +++ b/umn/source/managing_templates/index.rst @@ -0,0 +1,28 @@ +:original_name: en-us_topic_0000002119371248.html + +.. _en-us_topic_0000002119371248: + +Managing Templates +================== + +- :ref:`Creating a Template ` +- :ref:`Viewing Templates ` +- :ref:`Viewing Template Details ` +- :ref:`Modifying a Template ` +- :ref:`Replicating a Template ` +- :ref:`Exporting a Template ` +- :ref:`Creating a Stack from a Template ` +- :ref:`Deleting a Template ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + creating_a_template + viewing_templates + viewing_template_details + modifying_a_template + replicating_a_template + exporting_a_template + creating_a_stack_from_a_template + deleting_a_template diff --git a/umn/source/managing_templates/modifying_a_template.rst b/umn/source/managing_templates/modifying_a_template.rst new file mode 100644 index 0000000..cccbfb2 --- /dev/null +++ b/umn/source/managing_templates/modifying_a_template.rst @@ -0,0 +1,44 @@ +:original_name: en-us_topic_0000002046742302.html + +.. _en-us_topic_0000002046742302: + +Modifying a Template +==================== + +You can edit an existing template and update its content by following these steps: + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002121754732.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . You can see all the templates created under the current account. + + + .. figure:: /_static/images/en-us_image_0000002194190061.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + +#. Click the **Edit** in the **Operation** column of the desired template to modify its content based on the latest version. In the Content Editor, you can directly edit the template content and you can create, rename, and delete files and folders or request an export if needed. + + + **Figure 3** Edit Template Content + + |image2| + +#. When the modification is done, click **Save Template** in the upper right corner to save this changes. + + .. note:: + + Template editing is always based on the latest version of the template. If you want to modify other versions, please go to \ :ref:`View the Template Details `\ . + +.. |image1| image:: /_static/images/en-us_image_0000002194186609.png +.. |image2| image:: /_static/images/en-us_image_0000002121909700.png diff --git a/umn/source/managing_templates/replicating_a_template.rst b/umn/source/managing_templates/replicating_a_template.rst new file mode 100644 index 0000000..72b0178 --- /dev/null +++ b/umn/source/managing_templates/replicating_a_template.rst @@ -0,0 +1,63 @@ +:original_name: en-us_topic_0000002154685881.html + +.. _en-us_topic_0000002154685881: + +Replicating a Template +====================== + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002121934994.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . You can see all the templates created under the current account. + + + .. figure:: /_static/images/en-us_image_0000002194224409.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + +#. Click the **More** -> **Replicate** in the **Operation** column of the desired template to make a copy of it based on the latest template version. + + + .. figure:: /_static/images/en-us_image_0000002158983366.png + :alt: **Figure 3** RFS Private Templates + + **Figure 3** RFS Private Templates + +#. In the Content Editor, you can directly edit the template content and you can create, rename, and delete files and folders or request an export if needed. + + + **Figure 4** Edit Template Content + + |image2| + +#. When the modification is done, click **Save Template** in the upper right corner to save this changes. + +#. A dialog box is displayed where you can specify the name, description and version description of the new template. + + + .. figure:: /_static/images/en-us_image_0000002166544344.png + :alt: **Figure 5** Dialog box for replicating a template + + **Figure 5** Dialog box for replicating a template + + .. note:: + + - The template name must start with a letter and can contain a maximum of 128 characters, including letters, digits, underscores (_), and hyphens (-). The name must be unique. + - The template name cannot be changed after the template is created. + - A template description can contain a maximum of 1024 characters. + - A template version description can contain a maximum of 1024 characters. + +#. After you click **OK** in the **Save Template** dialog box, the new template will be created, and you can check in the **Private Templates** page. + +.. |image1| image:: /_static/images/en-us_image_0000002194220969.png +.. |image2| image:: /_static/images/en-us_image_0000002121776826.png diff --git a/umn/source/managing_templates/viewing_template_details.rst b/umn/source/managing_templates/viewing_template_details.rst new file mode 100644 index 0000000..caff338 --- /dev/null +++ b/umn/source/managing_templates/viewing_template_details.rst @@ -0,0 +1,59 @@ +:original_name: en-us_topic_0000002119404102.html + +.. _en-us_topic_0000002119404102: + +Viewing Template Details +======================== + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002157147725.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . You can see all the templates created under the current account. + + + .. figure:: /_static/images/en-us_image_0000002158823546.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + +#. Click the name of the desired template to view its details. + + There are three function modules on the template details page: + + a. **Basic Information**: displays basic information about the template, such as \ **Template Name**\ , \ **Template ID**\ , \ **Template Description**\ , etc, as shown in :ref:`Figure Template Details `. You can modify the template description here. + b. **Version Info**: displays all the version information of this template. You can view the content of any version in **Version** **Preview** by clicking the preview icon for that version. You can also perform different operations on the template versions, such as edit, delete, export or create a stack. + c. **Version Preview**: displays the template content of the specified version + + .. _en-us_topic_0000002119404102__fig045261413418: + + .. figure:: /_static/images/en-us_image_0000002158983038.png + :alt: **Figure 3** Template Details + + **Figure 3** Template Details + + You can perform the following operations on the template versions: + + - **Editing a version**: this will create a new template version based on the selected version. To start editing a specific template version, click **Edit** in the **Operation** column of the desired version. + - **Exporting a version**: this will export the selected template version in a zip file format. The naming convention of the export file is: “{TEMPLATE_NAME}-{TEMPLATE_VERSION}.zip”. To export a specific template version, click **More** -> **Export** in the **Operation** column of the desired version. + - **Deleting a version**: this will delete the selected template version. You can delete a single version or multiple versions in batches: + + a. To delete a single template version, click **More** -> **Delete** in the **Operation** column. + b. To delete multiple template versions in batches, select the desired template versions and click the **Delete** in the upper left corner above the version table. + + .. caution:: + + - The deletion cannot be undone. + - If a template has only one version, the deletion of that version will result in the deletion of the entire template. + + - **Creating a stack**: this will initiate the creation of a new stack based on the selected template version. To start creating a stack based on a specific template version, click **Create Stack** in the **Operation** column of the desired version. For more information about the entire stack creation procedure, check :ref:`Creating a Stack from a Template. ` + +.. |image1| image:: /_static/images/en-us_image_0000002158979846.png diff --git a/umn/source/managing_templates/viewing_templates.rst b/umn/source/managing_templates/viewing_templates.rst new file mode 100644 index 0000000..d6a3222 --- /dev/null +++ b/umn/source/managing_templates/viewing_templates.rst @@ -0,0 +1,41 @@ +:original_name: en-us_topic_0000002119245982.html + +.. _en-us_topic_0000002119245982: + +Viewing Templates +================= + +#. Log in to the management console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**. + + The \ **Dashboard**\ page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002121906076.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +#. In the left navigation pane, choose \ **Templates**\ -> **Private Templates**\ . You can see all the templates created under the current account. Additionally, for each template, you can obtain the **Description**, **Version**, **Version Description**, etc. + + + .. figure:: /_static/images/en-us_image_0000002194190049.png + :alt: **Figure 2** RFS Private Templates + + **Figure 2** RFS Private Templates + + You can perform the following operations on the templates: + + - **Modifying a template**: this will create a new template version based on the latest version of the selected template. For more details, check :ref:`Modifying a Template `. + - **Replicating a template**: this will create a brand new template based on the latest version of the selected template. For more details, check :ref:`Replicating a Template `. + - **Exporting a template**: this will export the latest template version of the selected template in a zip file format. For more details, check :ref:`Exporting a Template `. + - **Deleting a template**: this will delete the entire template. For more details, check :ref:`Deleting a Template `. + + .. caution:: + + Deleting a template will delete all versions in the template and the deleted versions cannot be restored. Exercise caution when performing this operation. + + - **Creating a stack**: this will initiate the creation of a new stack based on the latest template version of the selected template. For more information about the entire stack creation procedure, check :ref:`Creating a Stack from a Template `. + +.. |image1| image:: /_static/images/en-us_image_0000002158820098.png diff --git a/umn/source/permission_management/creating_a_user_and_granting_permissions.rst b/umn/source/permission_management/creating_a_user_and_granting_permissions.rst new file mode 100644 index 0000000..8cd5f11 --- /dev/null +++ b/umn/source/permission_management/creating_a_user_and_granting_permissions.rst @@ -0,0 +1,40 @@ +:original_name: en-us_topic_0000002158796408.html + +.. _en-us_topic_0000002158796408: + +Creating a User and Granting Permissions +======================================== + +This section describes how to use IAM to implement fine-grained permissions control for RF service. With IAM, you can: + +- Create IAM users for employees based on your organizational structure. Each IAM user has their own security credentials for accessing RF service. +- Granting users only the permissions required to perform a given task based on their job responsibilities. +- Entrust an account or a cloud service to perform operations for your RF service. + +If your account does not need indivitual IAM users, skip this section. + +:ref:`Figure 1 ` shows the process flow for granting permissions. + +**Prerequisites** + +Before granting permissions, learn about the RFS permissions and select the permissions as required. For details about the system-defined permissions supported by RFS, see :ref:`RFS Permissions `. To grant permissions for other services, you can see `permissions `__. + +**Flowchart** + +.. _en-us_topic_0000002158796408__fig14490220011: + +.. figure:: /_static/images/en-us_image_0000002159668284.png + :alt: **Figure 1** Granting RFS permissions + + **Figure 1** Granting RFS permissions + +#. On the IAM console, `create a user group and assigning permissions `__. Here, **RFS ReadOnlyAccess** permissions are used as an example. + +#. `Create an IAM user and add it to the created user group `__. + +#. `Log in `__ and verify permissions. + + The created user logs in to the console and verifies permissions as described below: + + - Choose **Service List** > **Resource Formation Service**. In the navigation pane on the left, click on **Stacks**. If you can view the stack list successfully, the RFS ReadOnlyAccess policy is in effect. If you click on **Create Stack** in the upper right corner of the displayed page, you should receive a notification message indicating your insufficient permissions. + - Choose another service from **Service List**. If a message appears indicating that you have insufficient permissions to access the service, it also reflects the **RFS ReadOnlyAccess** policy. diff --git a/umn/source/permission_management/custom_policies.rst b/umn/source/permission_management/custom_policies.rst new file mode 100644 index 0000000..ee5f630 --- /dev/null +++ b/umn/source/permission_management/custom_policies.rst @@ -0,0 +1,77 @@ +:original_name: en-us_topic_0000002158636644.html + +.. _en-us_topic_0000002158636644: + +Custom Policies +=============== + +The following lists examples of custom policies for RFS. + +**Example Custom Policies** + +- Example 1: Granting permission to view stacks + + .. code-block:: + + { + "Version": "1.1", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "rf:stack:listStacks" + ] + } + ] + } + +- Example 2: Granting permission to deny stack deletion + + “Deny” permissions should be used together with “Allow” permissions. If “Deny” and “Allow” permissions are both assigned, the “Deny” permissions take precedence over the “Allow” permissions. + + Assume that you want to grant the **RF FullAccess** permissions to users but do not want them to delete stacks. You can create a custom policy for denying stack deletion, and attach this policy together with the **RF FullAccess** policy to the users. As an explicit deny in any policy overrides any allows, the users can perform all operations on stacks except deleting them. The following shows an example policy for denying stack deletion. + + .. code-block:: + + { + "Version": "1.1", + "Statement": [ + { + "Effect": "Deny", + "Action": [ + "rf:stack:deleteStack" + ] + } + ] + } + +- Example 3: Creating a custom policy containing multiple actions. + + A custom policy can contain actions of one or more services. To grant permissions of multiple services in a policy, ensure that the services are all of the same level (global or project). + + The following shows an example policy that contains multiple actions. + + .. code-block:: + + { + "Version": "1.1", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "rf:stack:updateStack", + "rf:stack:createStack", + "rf:stack:deployStack", + "rf:stack:deleteStack", + "rf:stack:listStacks" + ] + }, + { + "Effect": "Allow", + "Action": [ + "kms:dek:create", + "kms:cmk:list" + ] + } + ] + } diff --git a/umn/source/permission_management/index.rst b/umn/source/permission_management/index.rst new file mode 100644 index 0000000..a8a847d --- /dev/null +++ b/umn/source/permission_management/index.rst @@ -0,0 +1,16 @@ +:original_name: en-us_topic_0000002154571445.html + +.. _en-us_topic_0000002154571445: + +Permission Management +===================== + +- :ref:`Creating a User and Granting Permissions ` +- :ref:`Custom Policies ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + creating_a_user_and_granting_permissions + custom_policies diff --git a/umn/source/quotas.rst b/umn/source/quotas.rst new file mode 100644 index 0000000..8bbc14f --- /dev/null +++ b/umn/source/quotas.rst @@ -0,0 +1,20 @@ +:original_name: en-us_topic_0000002119213164.html + +.. _en-us_topic_0000002119213164: + +Quotas +====== + +RFS limits the number of resources for a single user, as shown in the following table. + ++------------------+---------------------------------------------------------------------------------+-------+ +| Resource | Item | Quota | ++==================+=================================================================================+=======+ +| Template | Maximum number of templates that can be created by a Open Telekom Cloud account | 100 | ++------------------+---------------------------------------------------------------------------------+-------+ +| Template Version | Maximum number of template versions that can be created for each template | 100 | ++------------------+---------------------------------------------------------------------------------+-------+ +| Stack | Maximum number of stacks that can be created by a Open Telekom Cloud account | 100 | ++------------------+---------------------------------------------------------------------------------+-------+ +| Execution Plan | Maximum number of execution plans that can be created in each stack | 100 | ++------------------+---------------------------------------------------------------------------------+-------+ diff --git a/umn/source/service_overview/accessing_rfs.rst b/umn/source/service_overview/accessing_rfs.rst new file mode 100644 index 0000000..838fddd --- /dev/null +++ b/umn/source/service_overview/accessing_rfs.rst @@ -0,0 +1,28 @@ +:original_name: en-us_topic_0000002119217234.html + +.. _en-us_topic_0000002119217234: + +Accessing RFS +============= + +To access the RFS console, perform the following steps: + +#. Log in to the OpenTelekomCloud Console. + +#. In the upper left corner of the page, click |image1|, and then click **Management & Deployment** > **Resource Formation Service**\ . + + The **Dashboard** page is displayed. + + + .. figure:: /_static/images/en-us_image_0000002158978858.png + :alt: **Figure 1** RFS Dashboard + + **Figure 1** RFS Dashboard + +=========== =========== =========== +Site Region Name Region Code +=========== =========== =========== +OpenTelekom eu-de eu-de +=========== =========== =========== + +.. |image1| image:: /_static/images/en-us_image_0000002158819098.png diff --git a/umn/source/service_overview/application_scenarios.rst b/umn/source/service_overview/application_scenarios.rst new file mode 100644 index 0000000..cf83522 --- /dev/null +++ b/umn/source/service_overview/application_scenarios.rst @@ -0,0 +1,75 @@ +:original_name: en-us_topic_0000002154657153.html + +.. _en-us_topic_0000002154657153: + +Application Scenarios +===================== + +Migrating Applications to the Cloud +----------------------------------- + +**Description** + +Migrating applications to the cloud involves repetitive manual work, such as the destruction and rebuild of environments and configuring new instances one by one when scaling out applications. These manual operations are error-prone. + +Some operations, such as creating databases or VMs, could be time-consuming. You may have to wait for a long time when these demanding operations need to be performed one by one. + +**Solution** + +RFS implements tool-based and process-based work for the preceding scenarios. It uses templates to describe resources required by applications in a unified manner. The stack management function enables automatic deployment or destruction for various resources. RFS allows you to define a large number of resource instances of different services and specifications in a template. You can also use RFS to realize automatic creation, quick deployment, and flexible configuration of resources. + +**Advantages** + +- **Easy to use** + + Design your applications and schedule resources by writing templates. Organize and manage the service easily and efficiently. + +- **Highly efficient** + + Automatically deploy or delete a template with a wizard to reduce repetitive work and manual misoperations. + +- **Quick replication of applications** + + Replicate a template to automatically deploy the same applications and resources to different data centers, improving efficiency. + + +**Figure 1** Migrating applications to the cloud + +|image1| + +ISV Resource Provisioning +------------------------- + +**Description** + +Independent software vendors (ISVs) need to deploy resources required by software on the cloud for their customers to use. The traditional delivery method is that ISVs provide the software code and platform building guides on their official websites for customers to download. This could be time demanding and costly, because ISVs have to configure networks, deliver resources, and deploy software all on themselves. + +**Solution** + +RFS enables ISVs to deliver software and required resources in a standard manner. ISVs can convert software services to templates. The stack deployment capability of RFS enables quick service provisioning and streamlines the delivery process. RFS uses a code template to describe the entire delivery environment, facilitating ISVs to integrate delivery with the CI/CD process. + +**Advantages** + +- **Standardized delivery** + + Templates and stacks standardize software delivery processes, which can be summarized into best practices for wider use. + +- **Better efficiency** + + Templates are used to automatically provision resources. ISVs only need to deploy stacks to complete service delivery, improving delivery efficiency. + +- **Error-proof creation** + + ISV software and resources required for the software are defined in a template to prevent mistakes introduced through manual work. + +- **CI/CD integration** + + RFS can be integrated into the existing tool chain to improve automation. + + +**Figure 2** ISV resource provisioning scenario + +|image2| + +.. |image1| image:: /_static/images/en-us_image_0000002119222466.png +.. |image2| image:: /_static/images/en-us_image_0000002119380574.png diff --git a/umn/source/service_overview/basic_concepts.rst b/umn/source/service_overview/basic_concepts.rst new file mode 100644 index 0000000..b37d777 --- /dev/null +++ b/umn/source/service_overview/basic_concepts.rst @@ -0,0 +1,18 @@ +:original_name: en-us_topic_0000002154575553.html + +.. _en-us_topic_0000002154575553: + +Basic Concepts +============== + ++----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Concept | Description | ++================+======================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ +| Resource | A cloud service may have multiple types of resources, such as VPCs, VMs, microservice applications, or high-level data models like security policies and DNS records. | ++----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Template | A template is a text file written using HCL syntax and describes your cloud resources. Its format can be tf, tf.json, or zip. RFS creates cloud resources based on templates. | ++----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Stack | A stack is a collection of cloud service resources. It creates, deletes, updates, and queries all cloud service resources described in a template as a whole. | ++----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Execution plan | An execution plan provides a preview of stack changes. It displays the comparison between the current template and online resources, and clearly shows the operations (such as addition, modification, and deletion) to be performed on resources and attributes during resource formation. Before executing a plan, you can preview it to check whether it meets your expectation. During execution, RFS creates and modifies resources as defined in the template. | ++----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ diff --git a/umn/source/service_overview/constraints_and_limitations.rst b/umn/source/service_overview/constraints_and_limitations.rst new file mode 100644 index 0000000..7de0a58 --- /dev/null +++ b/umn/source/service_overview/constraints_and_limitations.rst @@ -0,0 +1,40 @@ +:original_name: en-us_topic_0000002119375338.html + +.. _en-us_topic_0000002119375338: + +Constraints and Limitations +=========================== + +Permissions +----------- + +If it is needed, :ref:`create an agency `. + +.. note:: + + If no agency is configured, RFS will have the permissions of the current user for deployment. An agency limits RFS's permissions on cloud service resoures, preventing undesired operations caused by incorrect templates or parameters. + +Constraints +----------- + +The following are basic constraints of RFS. + ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| Resource | Item | Limit | ++================+========================================================================================================================+==========================+ +| Template | Maximum length of a template name | 128 characters | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| | Maximum length of a template file name | 255 bytes | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| | Maximum length of a template URL | 2048 bytes | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| | Maximum size of the file pointed to by the **template_uri** used in APIs for creating a template or a template version | 1 MB after decompression | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| | Maximum size of the file containing **template_body** used in APIs for creating a template or template version | 50 KB | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| Stack | Timeout interval for creating a stack | 6 hours | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| | Maximum length of a stack name | 128 characters | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ +| Execution plan | Maximum length of an execution plan name | 128 characters | ++----------------+------------------------------------------------------------------------------------------------------------------------+--------------------------+ diff --git a/umn/source/service_overview/index.rst b/umn/source/service_overview/index.rst new file mode 100644 index 0000000..8305457 --- /dev/null +++ b/umn/source/service_overview/index.rst @@ -0,0 +1,32 @@ +:original_name: en-us_topic_0000001991770617.html + +.. _en-us_topic_0000001991770617: + +Service Overview +================ + +- :ref:`Basic Concepts ` +- :ref:`What Is RFS? ` +- :ref:`Product Advantages ` +- :ref:`Region and AZ ` +- :ref:`Application Scenarios ` +- :ref:`RFS and Other Services ` +- :ref:`Constraints and Limitations ` +- :ref:`Accessing RFS ` +- :ref:`Permission ` +- :ref:`Supported Provider Versions ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + basic_concepts + what_is_rfs + product_advantages + region_and_az + application_scenarios + rfs_and_other_services + constraints_and_limitations + accessing_rfs + permission + supported_provider_versions diff --git a/umn/source/service_overview/permission.rst b/umn/source/service_overview/permission.rst new file mode 100644 index 0000000..c3dafc0 --- /dev/null +++ b/umn/source/service_overview/permission.rst @@ -0,0 +1,268 @@ +:original_name: en-us_topic_0000002154657157.html + +.. _en-us_topic_0000002154657157: + +Permission +========== + +By default, new IAM users do not have permissions assigned. You need to add a user to one or more groups, and attach permissions policies or roles to these groups. Users inherit permissions from the groups to which they are added and can perform specified operations on cloud services based on the permissions. + +RFS is a project-level service accessed in specific physical regions. To assign RFS permissions to a user group, specify the scope as region-specific projects and select projects for the permissions to take effect. If **All projects** is selected, the permissions will take effect for the user group in all region-specific projects. When accessing RFS, the users need to switch to a region where they have been authorized to use this service. + +You can grant permissions by using roles and policies. + +- Roles: A coarse-grained authorization mechanism that defines permissions related to user responsibilities. This mechanism provides a limited number of service-level roles for authorization. Open Telekom Cloud services depend on each other. When you grant permissions using roles, you may need to attach any existing role dependencies. However, roles are not ideal for fine-grained authorization and least privilege access. +- Policies: A fine-grained authorization mechanism that defines permissions required to perform operations on specific cloud resources under certain conditions. This type of authorization is more flexible and is ideal for least privilege access. + +.. table:: **Table 1** RFS system-defined permissions + + +------------------------------------+------------------------------------------------------------------------------------------+-----------------------+ + | Item | Description | Type | + +====================================+==========================================================================================+=======================+ + | RF FullAccess | All permissions for RFS. | System-defined policy | + +------------------------------------+------------------------------------------------------------------------------------------+-----------------------+ + | RF DeployByExecutionPlanOperations | Create, apply, and read permissions for execution plans and read permissions for stacks. | System-defined policy | + +------------------------------------+------------------------------------------------------------------------------------------+-----------------------+ + | RF ReadOnlyAccess | Read-only permissions for RFS. | System-defined policy | + +------------------------------------+------------------------------------------------------------------------------------------+-----------------------+ + +:ref:`Table 2 ` lists the common operations supported by each system-defined policy of RFS. Please choose proper policies according to this table. + +.. table:: **Table 2** Common RFS operations supported by system-defined permissions + + +--------------------------------+---------------+------------------------------------+-------------------+ + | Operation | RF FullAccess | RF DeployByExecutionPlanOperations | RF ReadOnlyAccess | + +================================+===============+====================================+===================+ + | Create a template | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Create a template version | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Delete a template | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Delete a template version | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | List templates | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | List template versions | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Show template metadata | Y | x | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Show template version content | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Show template version metadata | Y | x | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Update template metadata | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Parse template variables | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Apply execution plan | Y | Y | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Create execution plan | Y | Y | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Delete execution plan | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Get execution plan | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Get execution plan metadata | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | List execution plans | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Create stack | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Delete stack | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Deploy stack | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Continue to deploy stack | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Continue to rollback stack | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Get stack metadata | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Get stack template | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | List stack events | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | List stack outputs | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | List stack resources | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | List stacks | Y | Y | Y | + +--------------------------------+---------------+------------------------------------+-------------------+ + | Update stack | Y | x | x | + +--------------------------------+---------------+------------------------------------+-------------------+ + +If predefined permissions cannot meet your requirements, you can create custom policies. Custom policies allow you to perform fine-grained access control flexibly. For details about how to create a custom policy, see \ `Creating a Custom Policy `__\ . For details about RFS example custom policies, see \ :ref:`Custom Policies `\ . + +The following table lists fine-grained actions and dependencies for RFS. + +.. _en-us_topic_0000002154657157__table65762630: + +.. table:: **Table 3** RFS fine-grained actions + + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | System-defined Permission | Description | Dependencies | Scenario | + +========================================+===================================================================================================================+=================================================================+=================================================================================================================+ + | rf:privateTemplate:create | Grant permissions to create a template | None | Create a template | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:createVersion | Grant permissions to create a template version | - rf:privateTemplate:list | Create a template version | + | | | - rf:privateTemplate:listVersions | | + | | | - rf:privateTemplate:showVersionContent | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:delete | Grant permissions to delete a template | - rf:privateTemplate:list | Delete a template | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:deleteVersion | Grant permissions to delete a template version | - rf:privateTemplate:list | Delete a template version | + | | | - rf:privateTemplate:listVersions | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:list | Grant permissions to list templates | None | List templates | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:listVersions | Grant permissions to list template versions | - rf:privateTemplate:list | List template versions | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:showMetadata | Grant permissions to show template metadata | - rf:privateTemplate:list | Show template properties such as template name, ID and description | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:showVersionContent | Grant permissions to show template version content | - rf:privateTemplate:list | Show template version content | + | | | - rf:privateTemplate:listVersions | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:showVersionMetadata | Grant permissions to show template version metadata | - rf:privateTemplate:list | Show template version properties such as template version ID and description | + | | | - rf:privateTemplate:listVersions | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:privateTemplate:updateMetadata | Grant permissions to update template metadata | - rf:privateTemplate:list | Update template properties such as template description | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:template:parseTemplateVariables | Grant permissions to parse template variables | None | Parse and return all variable blocks in the template | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:applyExecutionPlan | Grant permissions to apply execution plan | - rf:stack:listStacks | Deploy a stack via applying an execution plan | + | | | - rf:stack:getStackMetadata | | + | | | - rf:stack:listExecutionPlans | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:createExecutionPlan | Grant permissions to create execution plan | Required to locate the desired stack | Create an execution plan | + | | | | | + | | | - rf:stack:listStacks | | + | | | | | + | | | Required for creating an execution plan from a private template | | + | | | | | + | | | - rf:privateTemplate:list | | + | | | - rf:privateTemplate:listVersions | | + | | | - rf:privateTemplate:showVersionContent | | + | | | | | + | | | Required for configuring template variables | | + | | | | | + | | | - rf:template:parseTemplateVariables | | + | | | | | + | | | Required for template resource encryption | | + | | | | | + | | | - kms:cmk:list | | + | | | - kms:dek:create | | + | | | - kms:dek:crypto | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:deleteExecutionPlan | Grant permissions to delete execution plan | - rf:stack:listStacks | Delete an execution plan | + | | | - rf:stack:getStackMetadata | | + | | | - rf:stack:listExecutionPlans | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:getExecutionPlan | Grant permissions to get execution plan | - rf:stack:listStacks | Get an execution plan which provides a preview of stack changes such as operations to be performed on resources | + | | | - rf:stack:getStackMetadata | | + | | | - rf:stack:listExecutionPlans | | + | | | - rf:stack:getExecutionPlanMetadata | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:getExecutionPlanMetadata | Grant permissions to get execution plan metadata | - rf:stack:listStacks | Get execution plan properties such as execution plan name, ID and description | + | | | - rf:stack:getStackMetadata | | + | | | - rf:stack:listExecutionPlans | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:listExecutionPlans | Grant permissions to list execution plans | - rf:stack:listStacks | List execution plans | + | | | - rf:stack:getStackMetadata | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:createStack | Grant permissions to create stack | Required for creating stack from a private template | Create a stack | + | | | | | + | | | - rf:privateTemplate:list | | + | | | - rf:privateTemplate:listVersions | | + | | | - rf:privateTemplate:showVersionContent | | + | | | | | + | | | Required for configuring template variables | | + | | | | | + | | | - rf:template:parseTemplateVariables | | + | | | | | + | | | Required for template resource encryption | | + | | | | | + | | | - kms:cmk:list | | + | | | - kms:dek:create | | + | | | | | + | | | Required for configuring agency | | + | | | | | + | | | - iam:agencies:listAgencies | | + | | | | | + | | | Required for stack creation using direct deployment | | + | | | | | + | | | - rf:stack:deployStack | | + | | | | | + | | | Required for stack creation using execution plan | | + | | | | | + | | | - rf:stack:createExecutionPlan | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:deleteStack | Grant permissions to delete stack | - rf:stack:listStacks | Delete a stack | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:deployStack | Grant permissions to deploy stack | Required to locate the desired stack | Deploy stack directly | + | | | | | + | | | - rf:stack:listStacks | | + | | | | | + | | | Required for directly deploy a private template | | + | | | | | + | | | - rf:privateTemplate:list | | + | | | - rf:privateTemplate:listVersions | | + | | | - rf:privateTemplate:showVersionContent | | + | | | | | + | | | Required for configuring template variables | | + | | | | | + | | | - rf:template:parseTemplateVariables | | + | | | | | + | | | Required for template resource encryption | | + | | | | | + | | | - kms:cmk:list | | + | | | - kms:dek:create | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:continueDeployStack | Grant permissions to continue to deploy stack | - rf:stack:listStacks | Retry failed stack deployment | + | | | | | + | | | Required for template resource encryption | | + | | | | | + | | | - kms:dek:crypto | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:continueRollbackStack | Grant permissions to continue to rollback stack. Currently this functionality is only available at the API level. | None | Retry failed stack rollback | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:getStackMetadata | Grant permissions to get stack metadata | - rf:stack:listStacks | Get stack properties such as stack ID, name and description | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:getStackTemplate | Grant permissions to get stack template | - rf:stack:listStacks | Get stack template | + | | | - rf:stack:getStackMetadata | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:listStackEvents | Grant permissions to list stack events | - rf:stack:listStacks | List stack events | + | | | - rf:stack:getStackMetadata | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:listStackOutputs | Grant permissions to list stack outputs | - rf:stack:listStacks | List stack outputs | + | | | - rf:stack:getStackMetadata | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:listStackResources | Grant permissions to list stack resources | - rf:stack:listStacks | List stack resources | + | | | - rf:stack:getStackMetadata | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:listStacks | Grant permissions to list stacks | None | List stacks | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | rf:stack:updateStack | Grant permissions to update stack | - rf:stack:listStacks | Update stack properties such as description, auto-rollback and deletion protection | + | | | - rf:stack:getStackMetadata | | + | | | | | + | | | Required for configuring agency | | + | | | | | + | | | - iam:agencies:listAgencies | | + +----------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + +.. note:: + + - If an agency is configured for the stack, make sure that all necessary permissions are configured for the agency, which are required for stack deployment. + - If there is no configured agency for the stack, make sure that all necessary permissions are assigned to the user, which are required for stack deployment. + + These permissions can be: + + - Different cloud service specific permissions depending on the resources and the operations described in the terraform template. + - If the resource encryption is enabled in the terraform template, the **kms:dek:crypto** permission must be granted. + +Related Documents +----------------- + +To learn about the IAM service, see `What Is IAM? `__. + +For details about how to create a user or a user group and how to grant RFS permissions, see :ref:`Creating a User and Granting Permissions `. diff --git a/umn/source/service_overview/product_advantages.rst b/umn/source/service_overview/product_advantages.rst new file mode 100644 index 0000000..810dd50 --- /dev/null +++ b/umn/source/service_overview/product_advantages.rst @@ -0,0 +1,20 @@ +:original_name: en-us_topic_0000002119375334.html + +.. _en-us_topic_0000002119375334: + +Product Advantages +================== + +**Declarative:** You only need to intuitively describe the final state of required resources, freeing you from the complex request process and simplifying resource management. + +**Idempotent:** The idempotent effect of invoking the resource description code for multiple times ensures that resources are not repeatedly applied for. + +**Secure and reliable:** Visualized audit, security, and compliance control policies prevent security risks caused by resource changes. + +**Rich ecosystem:** The southbound ecosystem supports mainstream Open Telekom Cloud services. For details, see `OpenTelekom Cloud Provider `__. The northbound ecosystem is fully compatible with the HCL syntax, eliminating a learning curve. + +**Easy to use:** With comprehensive documentation and samples, resource management can be completed in five steps. + +**Full hosting and cloud-based services:** You do not need to install any software, prepare executors, or manage underlying files and data. + +**Automatic rollback:** If deployment fails for resources, RFS automatically returns the status of all resources to that of the previous successful deployment. diff --git a/umn/source/service_overview/region_and_az.rst b/umn/source/service_overview/region_and_az.rst new file mode 100644 index 0000000..34c6e1d --- /dev/null +++ b/umn/source/service_overview/region_and_az.rst @@ -0,0 +1,40 @@ +:original_name: en-us_topic_0000002119217230.html + +.. _en-us_topic_0000002119217230: + +Region and AZ +============= + +Concept +------- + +A region and availability zone (AZ) identify the location of a data center. You can create resources in a specific region and AZ. + +- A region is a physical data center, which is completely isolated to improve fault tolerance and stability. The region that is selected during resource creation cannot be changed after the resource is created. +- An AZ is a physical location where resources use independent power supplies and networks. A region contains one or more AZs that are physically isolated but interconnected through internal networks. Because AZs are isolated from each other, any fault that occurs in one AZ will not affect others. + +Figure 1 shows the relationship between regions and AZs. + + +.. figure:: /_static/images/en-us_image_0000002158802688.png + :alt: **Figure 1** Regions and AZs + + **Figure 1** Regions and AZs + +Selecting a Region +------------------ + +Select a region closest to your target users for lower network latency and quick access. + +Selecting an AZ +--------------- + +When deploying resources, consider your applications' requirements on disaster recovery (DR) and network latency. + +- For high DR capability, deploy resources in different AZs within the same region. +- For lower network latency, deploy resources in the same AZ. + +Regions and Endpoints +--------------------- + +Before you use an API to call resources, specify its region and endpoint. For more details, see `Regions and Endpoints `__\ l. diff --git a/umn/source/service_overview/rfs_and_other_services.rst b/umn/source/service_overview/rfs_and_other_services.rst new file mode 100644 index 0000000..482894b --- /dev/null +++ b/umn/source/service_overview/rfs_and_other_services.rst @@ -0,0 +1,12 @@ +:original_name: en-us_topic_0000002154575557.html + +.. _en-us_topic_0000002154575557: + +RFS and Other Services +====================== + +- **OBS**: RFS uses OBS buckets to download template files and dump logs. +- **CTS**: RFS converts user operations including API calls into audit logs and sends these logs to CTS. +- **IAM**: RFS uses IAM for user authentication and fine-grained authorization. +- **KMS**: RFS uses KMS to encrypt sensitive information (in variables or other data) before transmission. +- **Config**: RFS interconnects with Config service to enable unified management of RFS resources. diff --git a/umn/source/service_overview/supported_provider_versions.rst b/umn/source/service_overview/supported_provider_versions.rst new file mode 100644 index 0000000..bda2344 --- /dev/null +++ b/umn/source/service_overview/supported_provider_versions.rst @@ -0,0 +1,20 @@ +:original_name: en-us_topic_0000002194972413.html + +.. _en-us_topic_0000002194972413: + +Supported Provider Versions +=========================== + +A Provider is a plug-in that encapsulates various resource APIs (such as CRUD APIs of resources) for the resource formation engine to call. + +RFS is updated monthly to keep the provider version up-to-date. The following table lists the current Provider types and versions supported by RFS. + +.. table:: **Table 1** Supported Provider Versions + + +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+ + | Type | Introduction | Version | + +===========================+======================================================================================================================================================================+======================================================================================================+ + | OpenTelekomCloud Provider | Users can use OpenTelekomCloud Provider to interact with various resources on Open Telekom Cloud. Before using the provider, configure the corresponding permissions | `1.35.13 `__ | + +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+ + | | | `1.36.15 `__ | + +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+ diff --git a/umn/source/service_overview/what_is_rfs.rst b/umn/source/service_overview/what_is_rfs.rst new file mode 100644 index 0000000..58de1e1 --- /dev/null +++ b/umn/source/service_overview/what_is_rfs.rst @@ -0,0 +1,10 @@ +:original_name: en-us_topic_0000002154657149.html + +.. _en-us_topic_0000002154657149: + +What Is RFS? +============ + +Resource Formation Service (RFS) fully supports Terraform (HCL and Provider), which is a de facto standard. It manages system and service resources (all physical or logical entities that can be located and described, such as databases, VPCs, pipelines, and IAM roles). RFS automatically deploys specified cloud service resources based on the template which uses the HCL (an open ecosystem) syntax. + +RFS focuses on automatically building Open Telekom Cloud resources in batches. It helps you create, manage, and upgrade required resources in an efficient, secure, and consistent manner, improving resource management efficiency and reducing security risks caused by resource management changes.