{"id":22574414,"url":"https://github.com/kirkmunro/dopx","last_synced_at":"2025-04-10T16:07:09.942Z","repository":{"id":21507607,"uuid":"24826630","full_name":"KirkMunro/DoPx","owner":"KirkMunro","description":"A comprehensive DigitalOcean PowerShell module","archived":false,"fork":false,"pushed_at":"2014-11-17T03:10:40.000Z","size":972,"stargazers_count":24,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T13:51:21.456Z","etag":null,"topics":["module","powershell","powershell-modules"],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KirkMunro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-10-05T21:22:15.000Z","updated_at":"2024-04-10T07:02:39.000Z","dependencies_parsed_at":"2022-08-21T02:10:15.019Z","dependency_job_id":null,"html_url":"https://github.com/KirkMunro/DoPx","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KirkMunro%2FDoPx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KirkMunro%2FDoPx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KirkMunro%2FDoPx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KirkMunro%2FDoPx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KirkMunro","download_url":"https://codeload.github.com/KirkMunro/DoPx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248250743,"owners_count":21072682,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["module","powershell","powershell-modules"],"created_at":"2024-12-08T03:05:53.257Z","updated_at":"2025-04-10T16:07:09.906Z","avatar_url":"https://github.com/KirkMunro.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿## DoPx\n\n### Overview\n\nThe DoPx module provides a rich set of commands that extend the automation\ncapabilities of the Digital Ocean (DO) cloud service. These commands make it\neasier to manage your Digital Ocean environment from Windows PowerShell. When\nused with the LinuxPx module, you can manage all aspects of your environment\nfrom one shell.\n\nNote: The LinuxPx module is currently in development and will be released as\nsoon as possible.\n\n### Minimum requirements\n\n- PowerShell 4.0\n- TypePx module\n- SnippetPx module\n\n### License and Copyright\n\nCopyright 2014 Kirk Munro\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\n### Installing the DoPx module\n\nDoPx is dependent on the TypePx and SnippetPx modules. You can download\nand install the latest versions of DoPx, TypePx and SnippetPx using any\nof the following methods:\n\n#### PowerShellGet\n\nIf you don't know what PowerShellGet is, it's the way of the future for PowerShell\npackage management. If you're curious to find out more, you should read this:\n\u003ca href=\"http://blogs.msdn.com/b/mvpawardprogram/archive/2014/10/06/package-management-for-powershell-modules-with-powershellget.aspx\" target=\"_blank\"\u003ePackage Management for PowerShell Modules with PowerShellGet\u003c/a\u003e\n\nNote that these commands require that you have the PowerShellGet module installed\non the system where they are invoked.\n\n```powershell\n# If you don’t have DoPx installed already and you want to install it for all\n# all users (recommended, requires elevation)\nInstall-Module DoPx,TypePx,SnippetPx\n\n# If you don't have DoPx installed already and you want to install it for the\n# current user only\nInstall-Module DoPx,TypePx,SnippetPx -Scope CurrentUser\n\n# If you have DoPx installed and you want to update it\nUpdate-Module\n```\n\n#### PowerShell 3.0 or Later\n\nTo install from PowerShell 3.0 or later, open a native PowerShell console (not ISE,\nunless you want it to take longer), and invoke one of the following commands:\n\n```powershell\n# If you want to install DoPx for all users or update a version already installed\n# (recommended, requires elevation for new install for all users)\n\u0026 ([scriptblock]::Create((iwr -uri http://tinyurl.com/Install-GitHubHostedModule).Content)) -ModuleName DoPx,TypePx,SnippetPx\n\n# If you want to install DoPx for the current user\n\u0026 ([scriptblock]::Create((iwr -uri http://tinyurl.com/Install-GitHubHostedModule).Content)) -ModuleName DoPx,TypePx,SnippetPx -Scope CurrentUser\n```\n\n### Using the DoPx module\n\nTo see a list of all commands that are included in DoPx, invoke the following\ncommand:\n\n```powershell\nGet-Command -Module DoPx\n```\n\nThis will return a list of the 44 commands that are included in the DoPx module.\nAt the time that this module was published, every feature that is available in\nversion 2 of the DigitalOcean API is covered in this module.\n\nHere are a few examples showing how you can get started using this module to\nmanage your DigitalOcean environment:\n\n```powershell\n# Set the default access token for all DoPx commands\n$doAccessToken = ConvertTo-SecureString -AsPlainText -Force '8d6f337076302316dca51e78d3068da231ccaa9077e8e94d28bcf91db7fc3a4a'\nSet-DoPxDefaultAccessToken -AccessToken $doAccessToken\n# Get all droplets from your DigitalOcean environment\nGet-DoPxDroplet\n# Show all images that are available\nGet-DoPxImage\n# Show all size specifications that are available\nGet-DoPxSize\n# Show all regions that are available\nGet-DoPxRegion\n# Look at all droplet commands\nGet-Command -Noun DoPxDroplet\n# Start all droplets\nGet-DoPxDroplet | Start-DoPxDroplet\n# See what would happen if you tried to create a bunch of new droplets with IPv6 and private networking enabled using the following command\n# Note that this will not actually create the droplets, but it will allow you to see what type of HTTP request is being used, the body the message would contain, and the target uri where the request would be sent\n# Once you confirm that is what you want, actually create the droplets by removing -WhatIf from the command\nNew-DoPxDroplet -Name NewDroplet1,NewDroplet2,NewDroplet3 -ImageId ubuntu-14-04-x64 -Size 4gb -Region nyc3 -EnableIPv6 -EnablePrivateNetworking -WhatIf\n```\n\nThis is just a small sample of what you can do with the DoPx module. If you want\nto see what HTTP requests are being sent and which uris they are being sent to,\ntry running any of the commands above with the -Verbose switch. As highlighted in\nthe last example, you can also use -WhatIf to see what would happen if you were\nto invoke a command that would change your environment (i.e. no Get-* commands,\nbut Add-*, Set-*, Remove-*, Rename-*, New-*, etc. all should support -WhatIf).\nAlso note that for the commands shown above, there are additional parameters for\nmore options, and full documentation is available for every command by invoking\nGet-Help followed by the name of the command you want help for.\n\nFor an example on how to get help on a DoPx command, try the following:\n\n```powershell\nGet-Help New-DoPxDroplet -Full | more\n```\n\nIf you would like help with specific automation scenarios with DoPx, please let\nme know!\n\n### Command List\n\nThe DoPx module currently includes the following commands:\n\n```powershell\nAdd-DoPxDnsRecord\nAdd-DoPxDomain\nAdd-DoPxSshKey\nClear-DoPxDefaultAccessToken\nCopy-DoPxBackup\nCopy-DoPxSnapshot\nDisable-DoPxDropletOption\nEnable-DoPxDropletOption\nGet-DoPxAction\nGet-DoPxBackup\nGet-DoPxDefaultAccessToken\nGet-DoPxDnsRecord\nGet-DoPxDomain\nGet-DoPxDroplet\nGet-DoPxImage\nGet-DoPxKernel\nGet-DoPxRegion\nGet-DoPxSize\nGet-DoPxSnapshot\nGet-DoPxSshKey\nNew-DoPxDroplet\nNew-DoPxSnapshot\nReceive-DoPxAction\nRemove-DoPxBackup\nRemove-DoPxDnsRecord\nRemove-DoPxDomain\nRemove-DoPxDroplet\nRemove-DoPxSnapshot\nRemove-DoPxSshKey\nRename-DoPxBackup\nRename-DoPxDnsRecord\nRename-DoPxDroplet\nRename-DoPxSnapshot\nRename-DoPxSshKey\nReset-DoPxDroplet\nResize-DoPxDroplet\nRestart-DoPxDroplet\nRestore-DoPxBackup\nRestore-DoPxSnapshot\nSet-DoPxDefaultAccessToken\nStart-DoPxDroplet\nStop-DoPxDroplet\nUpdate-DoPxKernel\nWait-DoPxAction\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkirkmunro%2Fdopx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkirkmunro%2Fdopx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkirkmunro%2Fdopx/lists"}