SSH (key-based auth)

Use the Secure Shell protocol to execute commands on a remote server using a private key

Integrate the SSH (key-based auth) API with the GitHub API

Setup the SSH (key-based auth) API trigger to run a workflow which integrates with the GitHub API. Pipedream's integration platform allows you to integrate SSH (key-based auth) and GitHub remarkably fast. Free for developers.

Execute a Command with SSH (key-based auth) API on New Branch (Instant) from GitHub API
GitHub + SSH (key-based auth)
 
Try it
Execute a Command with SSH (key-based auth) API on New Card in Column (Instant) from GitHub API
GitHub + SSH (key-based auth)
 
Try it
Execute a Command with SSH (key-based auth) API on New Collaborator (Instant) from GitHub API
GitHub + SSH (key-based auth)
 
Try it
Execute a Command with SSH (key-based auth) API on New Commit Comment (Instant) from GitHub API
GitHub + SSH (key-based auth)
 
Try it
Execute a Command with SSH (key-based auth) API on New Commit from GitHub API
GitHub + SSH (key-based auth)
 
Try it
New Branch from the GitHub API

Emit new event when a branch is created See the documentation

 
Try it
New Card in Column (Classic Projects) from the GitHub API

Emit new event when a (classic) project card is created or moved to a specific column. For Projects V2 use New Issue with Status trigger. More information here

 
Try it
New Collaborator from the GitHub API

Emit new event when a collaborator is added See the documentation

 
Try it
New Commit from the GitHub API

Emit new event when commits are pushed to a branch See the documentation

 
Try it
New Commit Comment from the GitHub API

Emit new event when a commit comment is created See the documentation

 
Try it
Execute a Command with the SSH (key-based auth) API

Executes a command on a remote device. See SSH lib docs here

 
Try it
Create Issue with the GitHub API

Create a new issue in a Gihub repo. See docs here

 
Try it
Search Issues and Pull Requests with the GitHub API

Find issues and pull requests by state and keyword. See docs here

 
Try it
Create Branch with the GitHub API

Create a new branch in a Github repo. See docs here

 
Try it
Create Gist with the GitHub API

Allows you to add a new gist with one or more files. See docs here

 
Try it

Overview of SSH (key-based auth)

The SSH (Secure Shell) key-based authentication API allows you to execute commands on a remote server securely. With Pipedream, leverage this capability to automate server management tasks, execute deployment scripts, or gather data from your server infrastructure. By integrating with other apps on Pipedream, you can create seamless workflows that trigger actions on your servers in response to various events.

Connect SSH (key-based auth)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
module.exports = defineComponent({
  props: {
    ssh: {
      type: "app",
      app: "ssh",
    }
  },
  async run({steps, $}) {
    const SSH2Promise = require('ssh2-promise')
    
    const { 
      host, 
      port,
      username, 
      privateKey,
    } = this.ssh.$auth
    
    const ssh = new SSH2Promise({
      host,
      port,
      username,
      privateKey,
    })
    
    await ssh.connect()
    console.log("Connection established")
    
    // Replace this with the command you'd like to run
    const resp = await ssh.exec("whoami")
    console.log(resp)
    
    await ssh.close()
  },
})

Overview of GitHub

The GitHub API is a powerful gateway to interaction with GitHub's vast web of data and services, offering a suite of endpoints to manipulate and retrieve information on repositories, pull requests, issues, and more. Harnessing this API on Pipedream, you can orchestrate automated workflows that respond to events in real-time, manage repository data, streamline collaborative processes, and connect GitHub with other services for a more integrated development lifecycle.

Connect GitHub

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    github: {
      type: "app",
      app: "github",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.github.com/user`,
      headers: {
        Authorization: `Bearer ${this.github.$auth.oauth_access_token}`,
        "X-GitHub-Api-Version": `2022-11-28`,
      },
    })
  },
})