RamblingCookieMonster / Psstash

Licence: mit
Atlassian Stash PowerShell Module

Programming Languages

powershell
5483 projects

Labels

Projects that are alternatives of or similar to Psstash

Generic Webhook Trigger Plugin
Can receive any HTTP request, extract any values from JSON or XML and trigger a job with those values available as variables. Works with GitHub, GitLab, Bitbucket, Jira and many more.
Stars: ✭ 287 (+3487.5%)
Mutual labels:  bitbucket
Git Deploy
Php Script for Auto-Pull in server (Using WebHook from GitLab, GitHub and Bitbucket)
Stars: ✭ 495 (+6087.5%)
Mutual labels:  bitbucket
Git Touch
An open-source app for GitHub, GitLab, Bitbucket, Gitea, and Gitee(码云), built with Flutter
Stars: ✭ 663 (+8187.5%)
Mutual labels:  bitbucket
Oauth
🔗 OAuth 2.0 implementation for various providers in one place.
Stars: ✭ 336 (+4100%)
Mutual labels:  bitbucket
Codestream
The Code Collaboration Tool Built for Remote Teams
Stars: ✭ 459 (+5637.5%)
Mutual labels:  bitbucket
Renovate
Universal dependency update tool that fits into your workflows.
Stars: ✭ 6,700 (+83650%)
Mutual labels:  bitbucket
Skyhook
Parses webhooks and forwards them in the proper format to Discord.
Stars: ✭ 263 (+3187.5%)
Mutual labels:  bitbucket
Git Repo
Git-Repo: CLI utility to manage git services from your workspace
Stars: ✭ 818 (+10125%)
Mutual labels:  bitbucket
Danger
🚫 Stop saying "you forgot to …" in code review (in Ruby)
Stars: ✭ 4,691 (+58537.5%)
Mutual labels:  bitbucket
Webhooks
🎣 Webhook receiver for GitHub, Bitbucket, GitLab, Gogs
Stars: ✭ 601 (+7412.5%)
Mutual labels:  bitbucket
Ghorg
Quickly clone an entire org/users repositories into one directory - Supports GitHub, GitLab, Bitbucket, and more
Stars: ✭ 377 (+4612.5%)
Mutual labels:  bitbucket
Upmgitextension
This package extends the UI of Unity Package Manager (UPM) for the packages installed from git repository.
Stars: ✭ 438 (+5375%)
Mutual labels:  bitbucket
Refined Bitbucket
Chrome and Firefox extension that improves Bitbucket's user experience
Stars: ✭ 560 (+6900%)
Mutual labels:  bitbucket
Reviewdog
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
Stars: ✭ 4,541 (+56662.5%)
Mutual labels:  bitbucket
Git Credential Manager Core
Secure, cross-platform Git credential storage with authentication to GitHub, Azure Repos, and other popular Git hosting services.
Stars: ✭ 670 (+8275%)
Mutual labels:  bitbucket
Atlassian Agent
Atlassian's productions crack.
Stars: ✭ 285 (+3462.5%)
Mutual labels:  bitbucket
Vssue
📫 A Vue-powered Issue-based Comment Plugin
Stars: ✭ 496 (+6100%)
Mutual labels:  bitbucket
Bucketlist
See what's in your BitBucket Server
Stars: ✭ 18 (+125%)
Mutual labels:  bitbucket
Scala Steward
🤖 A bot that helps you keep your Scala projects up-to-date
Stars: ✭ 812 (+10050%)
Mutual labels:  bitbucket
Atlassian Python Api
Atlassian Python REST API wrapper
Stars: ✭ 564 (+6950%)
Mutual labels:  bitbucket

Build status

Stash PowerShell Module

This is a PowerShell module for working with the Atlassian Stash REST API.

This is an quick and dirty implementation based on my environment's configuration, with limited functionality. Contributions to improve this would be more than welcome!

Chances are high that there will be breaking design changes, this is just a simple POC.

Examples:

Query for projects:

Public projects

Query for repositories:

Public projects

Query for project permissions:

Public projects

Public projects

Query for arbitrary objects:

Objects

Instructions:

# One time setup
    # Download the repository
    # Unblock the zip
    # Extract the PSStash folder to a module path (e.g. $env:USERPROFILE\Documents\WindowsPowerShell\Modules\)

# Import the module.
    Import-Module PSStash    #Alternatively, Import-Module \\Path\To\PSStash

# Get commands in the module
    Get-Command -Module PSStash

# Get help for a command
    Get-Help Get-StashObject -Full
    Get-Help Get-StashConfig -Full

# Set a default Uri
    Set-StashConfig -uri https://stash.contoso.com

# List public projects
    Get-StashProject

# List repositories that user in $cred has access to
    Get-StashObject -Object repos -Credential $cred

# List repositories under the 'sysinv' project
    Get-StashObject -Object projects/sysinv/repos -Credential $cred

# Create, change, and delete objects; for example, projects
    New-StashObject -Object projects -Credential $Cred -Body @{
        key = "TSTPRJ"
        name = "Test Project"
        description = "A Project To Delete"
        avatar = "data:image/png;base64,$Base64EncodedImage"
    }

    Set-StashObject -Object projects/TSTPRJ -Credential $cred -Body @{ description = "MODIFIED DESCRIPTION!" } -Force

    Remove-StashObject -Object projects/TSTPRJ -Credential $Cred -Force

# Fork a repository into my personal project:
    New-StashFork -Credential $cred -Project SYSINV -Repo SystemsInventory

# View repositories in my personal project:
    Get-StashObject -Object projects/~MYUSERNAME/repos -Credential $Cred

# Get project user and group permissions
    Get-StashProject | Get-StashProjectUserPermission -Cred $Cred
    Get-StashProject | Get-StashProjectGroupPermission -Cred $Cred

References:

TODO:

Everything. This is in the 'can I get it working' state. Need to identify requirements (e.g. which specific objects to create functions for, parameters for these objects, whether to pursue OAUTH) for further work, write functions, tests, etc.

Potential functions:

  • [x] Get-StashProject
  • [x] Get-StashRepo
  • [x] New-StashFork
  • [x] Get-StashProjectUserPermission
  • [x] Get-StashProjectGroupPermission
  • [ ] New-StashProject
  • [ ] New-StashRepo
  • [ ] Remove-StashRepo
  • [ ] Get-StashProjectPermission
  • [ ] Set-StashProjectPermission
  • [ ] Add-StashProjectPermission
  • [ ] Get-StashRepoPermission
  • [ ] Set-StashRepoPermission
  • [ ] Add-StashRepoPermission
  • [ ] Remove-StashRepoPermission
  • [ ] Get-StashCommit
  • [ ] Merge-StashPullRequest
  • [ ] Add-StashPullRequestComment
  • [ ] Deny-StashPullRequest

Project Status, 1/17/2016: I no longer work with or have access to Stash / BitBucket Server. Feel free to fork this or use it as needed, but there will likely be no further development, barring external contributions.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].