{"id":20589074,"url":"https://github.com/alexander-scott/zuul_job_browser","last_synced_at":"2025-04-14T22:05:32.675Z","repository":{"id":40287575,"uuid":"254838786","full_name":"alexander-scott/zuul_job_browser","owner":"alexander-scott","description":"Navigate through Zuul Configuration in VSCode more easily with this extension.","archived":false,"fork":false,"pushed_at":"2025-04-14T11:37:25.000Z","size":1663,"stargazers_count":6,"open_issues_count":10,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-14T22:04:56.262Z","etag":null,"topics":["ansible","vscode","vscode-extension","zuul","zuul-ci"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=alexander-scott.zuulplugin","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexander-scott.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-11T09:58:00.000Z","updated_at":"2025-04-14T11:36:13.000Z","dependencies_parsed_at":"2023-11-13T18:30:30.769Z","dependency_job_id":"e142b741-fdd3-41f0-96c4-e87ad67127a5","html_url":"https://github.com/alexander-scott/zuul_job_browser","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexander-scott%2Fzuul_job_browser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexander-scott%2Fzuul_job_browser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexander-scott%2Fzuul_job_browser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexander-scott%2Fzuul_job_browser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexander-scott","download_url":"https://codeload.github.com/alexander-scott/zuul_job_browser/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248968831,"owners_count":21191160,"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":["ansible","vscode","vscode-extension","zuul","zuul-ci"],"created_at":"2024-11-16T07:27:43.881Z","updated_at":"2025-04-14T22:05:32.658Z","avatar_url":"https://github.com/alexander-scott.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Zuul Job Browser - VSCode Plugin\n\n## How do I install the plugin?\n\nInstall from this VSCode Extension Marketplace: https://marketplace.visualstudio.com/items?itemName=alexander-scott.zuulplugin. To uninstall follow [these](https://code.visualstudio.com/docs/editor/extension-gallery#_uninstall-an-extension) instructions.\n\n### Requirements\n\n- Requires VSCode version ^1.44.0.\n\n### Limitations\n\n- With large amounts of Zuul configuration, the plugin does not work very well over remote SSH.\n\n## How do I effectively use the plugin?\n\nThe best way to use this framework is by creating a multi-root workspace that has all the repositories/folders than contain your job definitions.\nFor help creating a multi-root workspace follow [this](https://code.visualstudio.com/docs/editor/multi-root-workspaces) link.\nThis plugin will scan all folders that are added to the workspace and link any defined jobs in any of the folders together.\n\n![Multi-Root Workspace](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/multi-root-workspace.png?raw=true)\n\nAfter the jobs have been parsed you're good to go! To see the number of jobs that have been parsed, look to the bottom left of the window:\n\n![Status Bar Job Count](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/status_bar.png?raw=true)\n\n## What does the plugin allow me to do?\n\n### Jump to Job defintion\n\nFurther information [here](https://code.visualstudio.com/docs/editor/editingevolved#_go-to-definition). It is currently implemented for:\n\n- Jumping to a parent job definition in any file in the workspace (Ctrl+Click / F12).\n- Jumping to a job definition from a project template.\n\n![Jump to Job definition](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/jump_to_definition.gif?raw=true)\n\n### Jump to Playbook from usage\n\nThis allows you to jump to the playbook from it's usage in a Job (Ctrl+Click / F12).\n\n![Jump to playbook definition](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/jump_to_playbook.gif?raw=true)\n\n### Jump to Ansible variable declaration from usage\n\nThis allows you to jump to location where the variable was defined (Ctrl+Click / F12). The logic adheres to parent/child inheritance and\nwill jump to the lowest level that a variable has been declared.\n\n![Jump to Ansible variable definition](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/jump_to_ansible_var.gif?raw=true)\n\n### Show Job Definitions\n\nFurther information [here](https://code.visualstudio.com/docs/editor/editingevolved#_go-to-symbol). This currently allows you to:\n\n- See all job definitions in a file (Outline Window).\n- Quick search amongst job names.\n- Quick search amongst job names from all files in a workspace (Ctrl+T).\n- Jump quickly between the definitions.\n\n![Outline window](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/outline_window.png?raw=true)\n\n![Search symbols](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/search_symbols.gif?raw=true)\n\n### Show Job Hierarchy\n\nShow the call hierarchy between parent and child jobs (Ctrl+Shift+H). This currently allows you to:\n\n- See the outgoing call hierarchy: currnt job to parent job.\n- See the incoming call hierarchy: current job to child jobs.\n\n![Job Hierarchy](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/job_hierarchy.png?raw=true)\n\n### Show all Job References\n\nFurther information [here](https://code.visualstudio.com/docs/editor/editingevolved#_peek). This currently allows you to:\n\n- See all jobs that reference this job as a parent in any file in the workspace (Shift+Alt+F12).\n- Peek at these jobs.\n- Show jobs referenced in project templates.\n\n![Find references](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/find_references.gif?raw=true)\n\n### Show Job Variables on hover\n\nHovers show information about the job that's below the mouse cursor. This currently allows you to see:\n\n- The variables of the job and all parents job.\n- Child jobs overwrite the variables of parent jobs.\n- These variables can also be seen in project templates.\n\n![Hover](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/hover.gif?raw=true)\n\n### Renaming all instances of a job with a single click\n\nFurther information [here](https://code.visualstudio.com/docs/editor/refactoring#_rename-symbol). This using this feature renames the job in the following places:\n\n- The name attribute in the main job definition.\n- All instances of this job being referenced from child jobs (through the parent attribute).\n- ALl instances of this job in all project templates.\n\n![Rename job](https://github.com/Alexander-Scott/zuulplugin/blob/master/images/rename_job.gif?raw=true)\n\n## How does it work?\n\nAll yaml files in the Zuul.d folder are parsed to find jobs and job attributes. This light weight job hierarchy is then stored in memory and fetched when needed.\nThere are also file watchers present to see when a valid file is Saved, Created and Deleted.\n\n## Future Features\n\n- Show errors and warnings -\u003e Duplicated job names, modifying jobs marked as final, running jobs marked as abstract.\n- Code completion -\u003e Auto complete variable names and job names\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexander-scott%2Fzuul_job_browser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexander-scott%2Fzuul_job_browser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexander-scott%2Fzuul_job_browser/lists"}