Workflow: GitHub Cron Create

Workflow Details

Download Workflow
{
    "nodes": [
        {
            "name": "Get latest release",
            "type": "n8n-nodes-base.github",
            "position": [
                540,
                340
            ],
            "parameters": {
                "limit": 1,
                "resource": "release",
                "operation": "getAll"
            },
            "typeVersion": 1
        },
        {
            "name": "Cron",
            "type": "n8n-nodes-base.cron",
            "position": [
                240,
                500
            ],
            "parameters": {
                "triggerTimes": {
                    "item": [
                        {
                            "mode": "everyWeek"
                        }
                    ]
                }
            },
            "typeVersion": 1
        },
        {
            "name": "Merge",
            "type": "n8n-nodes-base.merge",
            "position": [
                740,
                420
            ],
            "parameters": [],
            "typeVersion": 1
        },
        {
            "name": "No issue for release?",
            "type": "n8n-nodes-base.function",
            "position": [
                920,
                420
            ],
            "parameters": {
                "functionCode": "const _ = require('lodash')\n\n\/\/ differentiate merged inputs (didnt find a way to get both inputs into one function invocation)\nconst releases = _.filter(items, i => _.has(i, 'json.assets'))\nif (releases.length != 1) throw new Error(`Invalid release count: ${releases.length}`)\nconst release = releases[0]\nconst issues = _.without(items, release)\n\/\/console.log({release,issues})\n\n\/\/ check if there's an issue for the release\nconst matchingIssue = _.find(issues, i => i.json.title.includes(release.json.tag_name))\n\/\/console.log({release,issues,matchingIssue})\n\nif (matchingIssue)\n  return []\nelse\n  return [release]"
            },
            "executeOnce": false,
            "typeVersion": 1
        },
        {
            "name": "Create issue",
            "type": "n8n-nodes-base.gitlab",
            "position": [
                1100,
                420
            ],
            "parameters": {
                "body": "={{$json[\"url\"]}}\n\n{{$json[\"body\"]}}",
                "owner": "txlab",
                "title": "=Upstream release: {{$json[\"tag_name\"]}}",
                "labels": [],
                "repository": "docker-linkcheck",
                "assignee_ids": []
            },
            "typeVersion": 1
        },
        {
            "name": "List issues",
            "type": "n8n-nodes-base.gitlab",
            "position": [
                540,
                500
            ],
            "parameters": {
                "owner": "txlab",
                "resource": "repository",
                "repository": "docker-linkcheck",
                "getRepositoryIssuesFilters": []
            },
            "typeVersion": 1
        }
    ],
    "connections": {
        "Cron": {
            "main": [
                [
                    {
                        "node": "Get latest release",
                        "type": "main",
                        "index": 0
                    },
                    {
                        "node": "List issues",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Merge": {
            "main": [
                [
                    {
                        "node": "No release for issue?",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Start": {
            "main": [
                [
                    {
                        "node": "Get latest release",
                        "type": "main",
                        "index": 0
                    },
                    {
                        "node": "List issues",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "List issues": {
            "main": [
                [
                    {
                        "node": "Merge",
                        "type": "main",
                        "index": 1
                    }
                ]
            ]
        },
        "Get latest release": {
            "main": [
                [
                    {
                        "node": "Merge",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "No release for issue?": {
            "main": [
                [
                    {
                        "node": "Create issue",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        }
    }
}
Back to Workflows

Related Workflows

Search & Summarize Web Data with Perplexity, Gemini AI & Bright Data to Webhooks
View
Read RSS feed from two different sources
View
Slack AI Chatbot with RAG for company staff
View
SearchApi AI Agent
View
AI Social Media Caption Creator
View
Get Long Lived Facebook User or Page Access Token
View
Writebinaryfile Create
View
OpenSea AI-Powered Insights via Telegram
View
Send daily weather updates via a message using the Gotify node
View
Splitout Code Update Webhook
View