-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
46cc8ad
commit b40ea1a
Showing
1 changed file
with
55 additions
and
19 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,40 +1,76 @@ | ||
# pwshCloudCommands | ||
|
||
## Synopsis | ||
[![Minimum Supported PowerShell Version](https://img.shields.io/badge/PowerShell-5.1+-purple.svg)](https://github.com/PowerShell/PowerShell) [![PowerShell Gallery][psgallery-img]][psgallery-site] ![Cross Platform](https://img.shields.io/badge/platform-windows%20%7C%20macos%20%7C%20linux-lightgrey) [![License][license-badge]](LICENSE) [![Documentation Status](https://readthedocs.org/projects/pwshcloudcommands/badge/?version=latest)](https://pwshcloudcommands.readthedocs.io/en/latest/?badge=latest) | ||
|
||
<!-- Enter a synopsis --> | ||
[psgallery-img]: https://img.shields.io/powershellgallery/dt/pwshCloudCommands?label=Powershell%20Gallery&logo=powershell | ||
[psgallery-site]: https://www.powershellgallery.com/packages/pwshCloudCommands | ||
[license-badge]: https://img.shields.io/github/license/techthoughts2/pwshCloudCommands | ||
|
||
## Description | ||
## What is pwshCloudCommands? | ||
|
||
<!-- Enter a description --> | ||
pwshCloudCommands is a PowerShell module offering capabilities to search for and analyze PowerShell cloud commands without needing to install cloud modules. It features a two-pronged approach to discovering commands: users can query cloud commands from AWS, Azure, and Oracle, or they can scan their local project files to accurately determine the cloud commands and modules being utilized. | ||
|
||
## Why | ||
## Why pwshCloudCommands? | ||
|
||
<!-- Short reason you created the project --> | ||
To aid in the discovery and analysis of cloud-specific PowerShell commands, `pwshCloudCommands` streamlines your workflow when working with PowerShell in the cloud. | ||
|
||
## Getting Started | ||
|
||
### Prerequisites | ||
- **Find Cloud Commands Without Local Installs**: You can effortlessly search for any cloud command across AWS, Azure, and Oracle without installing the corresponding modules locally, reducing overhead and simplifying cloud command management. | ||
- **Enjoy Advanced Search Capabilities**: Unlike the PowerShell Gallery, this module supports free-form searches. This is particularly useful when you're not sure of the exact command or syntax, offering an intuitive and flexible way to find what you need. | ||
- **Benefit from Comprehensive Project Analysis**: The standout `Get-CloudCommandFromFile` function in `pwshCloudCommands` scans your project files to identify all necessary cloud modules. This feature is invaluable for creating dependency files or integrating into CI/CD processes, and it's extremely helpful for quickly understanding the cloud module requirements of new code or projects. | ||
|
||
<!-- list any prerequisites --> | ||
## Getting Started | ||
|
||
### Installation | ||
|
||
```powershell | ||
# how to install pwshCloudCommands | ||
Install-Module -Name 'pwshCloudCommands' -Repository PSGallery -Scope CurrentUser | ||
``` | ||
|
||
### Quick start | ||
|
||
#### Example1 | ||
### Quick Start | ||
|
||
```powershell | ||
# command showing how to use your project | ||
#------------------------------------------------------------------------------------------------ | ||
# import the pwshCloudCommands module | ||
Import-Module -Name "pwshCloudCommands" | ||
#------------------------------------------------------------------------------------------------ | ||
# identify all PowerShell commands and modules used in the specified path | ||
$psCloud = Get-CloudCommandFromFile -Path "$env:HOME\pathToEvaluate" | ||
$psCloud | ||
#------------------------------------------------------------------------------------------------ | ||
# identify all unique modules used in the specified path - useful for CI/CD bootstrapping | ||
$psCloud = Get-CloudCommandFromFile -Path "$env:HOME\pathToEvaluate" | ||
$psCloud.CloudCommands.ModuleName | Select-Object -Unique | ||
#------------------------------------------------------------------------------------------------ | ||
# search for a specific cloud command on a specific cloud platform | ||
Find-CloudCommand -Query Write-S3Object -Filter AWS | ||
#------------------------------------------------------------------------------------------------ | ||
# search for a specific cloud command on any cloud platform | ||
Find-CloudCommand -Query New-OCIComputeInstance | ||
#------------------------------------------------------------------------------------------------ | ||
# wildcard search for a cloud command | ||
Find-CloudCommand -Query New*VM* -Filter Azure | ||
#------------------------------------------------------------------------------------------------ | ||
# free-form search for a cloud command | ||
$commands = Find-CloudCommand -Query 'I want to create a new compute instance in Oracle Cloud' | ||
$commands | ||
#------------------------------------------------------------------------------------------------ | ||
# I want to get all cloud functions and modules that belong to a specific cloud platform | ||
Get-AllCloudCommandInfo -Filter AWS | ||
Get-AllCloudCommandInfo -Filter Azure | ||
Get-AllCloudCommandInfo -Filter Oracle | ||
#------------------------------------------------------------------------------------------------ | ||
``` | ||
|
||
## Author | ||
## How pwshCloudCommands Works | ||
|
||
pwshCloudCommands utilizes a cloud-based, event-driven workflow to generate a dynamic cache of known PowerShell cloud commands. This cache is periodically updated to ensure that it reflects the latest commands available from multiple cloud providers. You can view [cache metrics](pwshCloudCommand-Metrics.md) and read more about the [cache creation component](pwshCloudCommands_cache_workflow.md). | ||
|
||
Jake | ||
## Features | ||
|
||
- Fully cross-platform and can be run on Windows, Linux, and macOS | ||
- Module-Free Command Search: Discover PowerShell commands without the need for local module installations. | ||
- Exact Function Name Search: Find specific functions, like Write-S3Object. | ||
- Wildcard Search: Use patterns, such as New*VM*, to locate commands. | ||
- Free-Form Search: Enter natural language queries like 'I want to create a new compute instance' for intuitive searching. | ||
- Complete Cache Data Dump: Access a comprehensive dump containing all known PowerShell cloud commands for detailed analysis. | ||
- Project File Analysis: Scan files and folders in your projects to identify used cloud functions and modules, crucial for project setup, discovery, and CI/CD pipeline integration. |