From e22b1902342e6ff20b687590a0f28956f9399d3c Mon Sep 17 00:00:00 2001 From: Bernard Date: Mon, 2 Nov 2020 16:38:29 -0800 Subject: [PATCH 1/2] New sample PowerShell Plug-in --- .../sync_os_versions_ad_to_cb.json | 11 +++++++++++ .../sync_os_versions_ad_to_cb.zip | Bin 0 -> 1121 bytes 2 files changed, 11 insertions(+) create mode 100644 actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json create mode 100644 actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.zip diff --git a/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json new file mode 100644 index 00000000..50dfcefd --- /dev/null +++ b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json @@ -0,0 +1,11 @@ +{ + "action-input-default-values": [], + "base-action-name": "Sync OS versions AD to CB", + "dialog-message": "", + "enabled": "True", + "extra-classes": "fas fa-bolt", + "label": "Sync OS versions AD to CB", + "requires-approval": "False", + "sequence": null, + "submit-button-label": "Vaya!" +} \ No newline at end of file diff --git a/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.zip b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.zip new file mode 100644 index 0000000000000000000000000000000000000000..fb5121071a72674f1531ccfb2594007256c26c64 GIT binary patch literal 1121 zcmWIWW@Zs#U|`^2P-#gD+}pU{@+^?2$H>570i=s7^OEE9i{r~ui;6Sz^NQmWQ{qeV zCOE`SQ3_tqp zmD^x3>!$R_OCA0JK5ZKB_wJqNe(n7#Lw3`Znk|cG zTfM&hY1fL?yViBBzPs+;w9wzb?(B5BAJbQ?*RfYkX4+=;w@OB7zOoUmEBdN7yo=X7 z|2Y1#T}|UGxpSShSs~X>pFOW101u*XrAdKHUjOp^0Sq2>76t};yg`(l6km{2nx2^# zZ)j#X<}q(93SeQo@0<`u2)c*8|<4u+d*LOXKl9=g6(C!SLWzm^}Ka# z>Z%13wz+3BKiWv`)B~zooLZlsEG3K8~de7YOZ44zpRmH1PGcYmDjJ zn>`cu_b;BgJp4-Xxq{7?YU?<@i;A8STKjlb|85S2$Zh+SR{uM3z?gHbxrT03$3t13 zii>t#W#JnXx%qOBTP`!1BNOvhk~Kl=8F!WZ5t}ChUJ}!#%~+(pd3D}bDLgY*IHUdU z;--W1;u>b1+_d1>mU-;D4F`{WdiPC0V71WJ@VeXHdl(p%Hm6*uYUPvrp};)7=CzI4 z`}=G~@4{KrHdXx9|DL?yUa(Y!ZSYRpH@Q1{w%A;g|HgUTWyguN{GY^w13#NLpPSW| z%lG}JzI#>flWl5|Y(4W1#P3i&d*EN^k#KXNIqU4@ugmW-d06m->(8W^m^h|+KX!jF zex{!LS=h@yXQ}nJ)(V&B`xSRDXEC(f?BGzdol7mOH`s2;-S(0#K2@{Udd-_PPi^U+ zpYPn8<>qSTHNE+q%5kqTUD+m=*GZ{&W#~m~3*J=E4cf1aByztzzj^wk{VSt>UDO1xOjT(Mry<#(q)`O6&O&B!Fej63H6Qx+I( wX#`O?a~pwth-?eC#0#;5fniIdGB8QwwuPvq9N^8$1~QNd2rmQa3T6-w0FMaN761SM literal 0 HcmV?d00001 From a366b831c49aab245ba8d1c5857a95bf09ac0133 Mon Sep 17 00:00:00 2001 From: Bernard Date: Mon, 2 Nov 2020 16:40:31 -0800 Subject: [PATCH 2/2] Extract the zip that was embedded in the sample PS Plug-in --- .../sync_os_versions_ad_to_cb.zip | Bin 1121 -> 0 bytes .../cb_plugin_1604344305994213_UGgl0a7.py | 26 ++++++++++++++++++ .../sync_os_versions_ad_to_cb.json | 11 ++++++++ 3 files changed, 37 insertions(+) delete mode 100644 actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.zip create mode 100644 actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/cb_plugin_1604344305994213_UGgl0a7.py create mode 100644 actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json diff --git a/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.zip b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.zip deleted file mode 100644 index fb5121071a72674f1531ccfb2594007256c26c64..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1121 zcmWIWW@Zs#U|`^2P-#gD+}pU{@+^?2$H>570i=s7^OEE9i{r~ui;6Sz^NQmWQ{qeV zCOE`SQ3_tqp zmD^x3>!$R_OCA0JK5ZKB_wJqNe(n7#Lw3`Znk|cG zTfM&hY1fL?yViBBzPs+;w9wzb?(B5BAJbQ?*RfYkX4+=;w@OB7zOoUmEBdN7yo=X7 z|2Y1#T}|UGxpSShSs~X>pFOW101u*XrAdKHUjOp^0Sq2>76t};yg`(l6km{2nx2^# zZ)j#X<}q(93SeQo@0<`u2)c*8|<4u+d*LOXKl9=g6(C!SLWzm^}Ka# z>Z%13wz+3BKiWv`)B~zooLZlsEG3K8~de7YOZ44zpRmH1PGcYmDjJ zn>`cu_b;BgJp4-Xxq{7?YU?<@i;A8STKjlb|85S2$Zh+SR{uM3z?gHbxrT03$3t13 zii>t#W#JnXx%qOBTP`!1BNOvhk~Kl=8F!WZ5t}ChUJ}!#%~+(pd3D}bDLgY*IHUdU z;--W1;u>b1+_d1>mU-;D4F`{WdiPC0V71WJ@VeXHdl(p%Hm6*uYUPvrp};)7=CzI4 z`}=G~@4{KrHdXx9|DL?yUa(Y!ZSYRpH@Q1{w%A;g|HgUTWyguN{GY^w13#NLpPSW| z%lG}JzI#>flWl5|Y(4W1#P3i&d*EN^k#KXNIqU4@ugmW-d06m->(8W^m^h|+KX!jF zex{!LS=h@yXQ}nJ)(V&B`xSRDXEC(f?BGzdol7mOH`s2;-S(0#K2@{Udd-_PPi^U+ zpYPn8<>qSTHNE+q%5kqTUD+m=*GZ{&W#~m~3*J=E4cf1aByztzzj^wk{VSt>UDO1xOjT(Mry<#(q)`O6&O&B!Fej63H6Qx+I( wX#`O?a~pwth-?eC#0#;5fniIdGB8QwwuPvq9N^8$1~QNd2rmQa3T6-w0FMaN761SM diff --git a/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/cb_plugin_1604344305994213_UGgl0a7.py b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/cb_plugin_1604344305994213_UGgl0a7.py new file mode 100644 index 00000000..78cd9cb8 --- /dev/null +++ b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/cb_plugin_1604344305994213_UGgl0a7.py @@ -0,0 +1,26 @@ +$ErrorActionPreference = "Stop" + +Write-Host "Running the PowerShell Plug-in code" + +$cb_api_url = "{{ cb_api_url }}" +$token = "{{ plugin_api_token }}" +$headers = @{ + 'Authorization' = "Bearer " + $token +} + +{% for server in servers %} + Write-Host "Getting OS version info from AD for {{ server.hostname }}" + $adcomputer = Get-ADComputer -Identity "{{ server.hostname }}" -Properties OperatingSystem, OperatingSystemServicePack, OperatingSystemVersion + + $body = @{ + parameters = @{ + os_version = $adcomputer.OperatingSystem + } + } + $json_payload = $body | ConvertTo-Json + Write-Host "Setting the os_version parameter on '{{ server.hostname }}' to " $body.parameters.os_version + Invoke-RestMethod -Method Post -Uri $cb_api_url"/api/v2/servers/{{ server.id }}/parameters/" -Headers $headers -Body $json_payload -ContentType 'application/json' +{% endfor %} + +Write-Host "Fetching a list of environments from API v3" +$environments = Invoke-RestMethod -Uri $cb_api_url"/api/v3/cmp/environments/" -Headers $headers \ No newline at end of file diff --git a/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json new file mode 100644 index 00000000..b8494a6b --- /dev/null +++ b/actions/powershell_plugins/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb/sync_os_versions_ad_to_cb.json @@ -0,0 +1,11 @@ +{ + "description": "", + "execution-timeout": 120, + "max-retries": 0, + "name": "Sync OS versions AD to CB", + "resource-technologies": [], + "script-filename": "cb_plugin_1604344305994213_UGgl0a7.py", + "shared": "False", + "target-os-families": [], + "type": "PowerShell Plug-in" +} \ No newline at end of file