0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

z/OSMF workflow実施後のdeleteについて

Last updated at Posted at 2025-02-06

z/OSMFのワークフローを実施後、completedしても、削除しない限り残ってしまいます。
確かに1system上限workflowのinstanceが200個しか存在できませんので、(z/OS v3.1マニュアルにより)
特に問題なく実行完了のworkflowは基本削除という運用になるのかと思います。

その削除の仕方として、筆者が調べた限り、2つのパターンがありそうです。

  1. 実行後の削除(原始的なやり方)
  2. ワークフロー生成時に実行完了したら削除するのをチェックした上で生成

その2パターンで、
またz/OSMFのdesktopで削除の仕方、Ansible for zのIBM z/OSMF collectionで使う仕方をそれぞれ調査してみました。(序でに、提供したREST APIの書き方も見てみました)

実行後の削除パターン

まずはz/OSMF desktopの場合

極普通に削除対象ワークフローをチェックして、アクションで削除するだけですが。。
image.png

REST API

こちらのrequestで削除できますね、
DELETE /zosmf/workflow/rest/<version>/workflows/<workflowKey>

z/OSMF collectionで削除する場合

zmf_workflowモジュールを使って、stateパラメータをdeletedに指定すればok

- name: Delete a workflow if it exists
  ibm.ibm_zosmf.zmf_workflow:
    state: "deleted"
    zmf_credential: "{{ result_auth }}"
    workflow_name: "ansible_sample_workflow_SY1"

z/OSMF collectionはwokflowkeyではなく、workflownameで指定するだけでも削除してくれます。
↓ドキュメントもこう書いていましたが、コードを見ると、一回nameでlistして該当するworkflowkeyを抽出しているっぽいです。詳細はご自身でコードを確認してもらえばわかるかと思います

   Delete the workflow instance specified by workflow_key.
    If workflow_key is not supplied, delete the workflow instance specified by
    workflow_name.
    Return the message to indicate whether the workflow instance does not exist
    or is deleted.
    Return the workflow_key of the deleted workflow instance.
    Return the workflow_name of the deleted workflow instance.

    :param AnsibleModule module: the ansible module

まあ、z/OSMF collectionも結局REST APIを発行しているからですね。

ワークフロー生成時に実行完了したら削除するのをチェックした上で生成

z/OSMF desktopの場合

workflow instanceを生成するときに、下のDelete workflow on completionすれば、
実行完了のものは勝手に自動削除されます。
image.png

REST API

マニュアルでこのsampleで提供していまして、requestにこのautoDeleteOnCompletionoptionをtrueにすればdesktopのチェックボックスと同じ効果

POST /zosmf/workflow/rest/1.0/workflows HTTP/1.1
Host: zosmf1.yourco.com
Connection: close
Content-Type: application/json
Content-Length: 203
Authorization: Basic em9zbWZhZDp6b3NtZmFk

{
    "workflowName":"AutomationExample",
    "workflowDefinitionFile":"/usr/lpp/zosmf/samples/workflow_sample_automation.xml",
    "system":"SY1",
    "owner":"zosmfad",
    "assignToOwner" :true,
    "accessType": "Restricted",
    "deleteCompletedJobs" : true
    "autoDeleteOnCompletion" : true 
}

z/OSMF collectionで削除する場合

マニュアルで調べた限り、、特にこのやり方がなく、どしてだろう疑問?
ちょっく調べてみたが、v2.3のマニュアルではautoDeleteOnCompletionoptionがありませんでした。
changesも見てみましたが、どのサービスレベルで追加された機能が分からず、、この機能を使うときは要注意かもですね。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?