Skip to content

Commit

Permalink
Merge branch 'develop' into chore/add_webreviw_to_defaults
Browse files Browse the repository at this point in the history
  • Loading branch information
kalisp authored Nov 29, 2024
2 parents 3a8e24d + 602287f commit 862e478
Show file tree
Hide file tree
Showing 8 changed files with 159 additions and 263 deletions.
27 changes: 27 additions & 0 deletions .github/workflows/assign_pr_to_project.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: 🔸Auto assign pr
on:
workflow_dispatch:
inputs:
pr_number:
type: number
description: "Run workflow for this PR number"
required: true
project_id:
type: number
description: "Github Project Number"
required: true
default: 16
pull_request:
types:
- opened

jobs:
auto-assign-pr:
if: ${{ github.event.pull_request.head.repo.full_name == github.repository }}
uses: ynput/ops-repo-automation/.github/workflows/pr_to_project.yml@main
with:
repo: "${{ github.repository }}"
project_id: "${{ inputs.project_id }}"
pull_request_number: "${{ github.event.pull_request.number || inputs.pr_number }}"
secrets:
token: ${{ secrets.YNPUT_BOT_TOKEN }}
25 changes: 25 additions & 0 deletions .github/workflows/release_trigger.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: 🚀 Release Trigger

on:
workflow_dispatch:
inputs:
draft:
type: boolean
description: "Create Release Draft"
required: false
default: false
release_overwrite:
type: string
description: "Set Version Release Tag"
required: false

jobs:
call-release-trigger:
uses: ynput/ops-repo-automation/.github/workflows/release_trigger.yml@main
with:
draft: ${{ inputs.draft }}
release_overwrite: ${{ inputs.release_overwrite }}
secrets:
token: ${{ secrets.YNPUT_BOT_TOKEN }}
email: ${{ secrets.CI_EMAIL }}
user: ${{ secrets.CI_USER }}
16 changes: 16 additions & 0 deletions .github/workflows/upload_to_ynput_cloud.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: 📤 Upload to Ynput Cloud

on:
workflow_dispatch:
release:
types: [published]

jobs:
call-upload-to-ynput-cloud:
uses: ynput/ops-repo-automation/.github/workflows/upload_to_ynput_cloud.yml@main
secrets:
CI_EMAIL: ${{ secrets.CI_EMAIL }}
CI_USER: ${{ secrets.CI_USER }}
YNPUT_BOT_TOKEN: ${{ secrets.YNPUT_BOT_TOKEN }}
YNPUT_CLOUD_URL: ${{ secrets.YNPUT_CLOUD_URL }}
YNPUT_CLOUD_TOKEN: ${{ secrets.YNPUT_CLOUD_TOKEN }}
18 changes: 18 additions & 0 deletions .github/workflows/validate_pr_labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: 🔎 Validate PR Labels
on:
pull_request:
types:
- opened
- edited
- labeled
- unlabeled

jobs:
validate-type-label:
uses: ynput/ops-repo-automation/.github/workflows/validate_pr_labels.yml@main
with:
repo: "${{ github.repository }}"
pull_request_number: ${{ github.event.pull_request.number }}
query_prefix: "type: "
secrets:
token: ${{ secrets.YNPUT_BOT_TOKEN }}
72 changes: 69 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,70 @@
Photoshop Addon
===============
# Photoshop Integration

Integration with Adobe Photoshop.
### Implemented features

- publishing workfile
- publishing image product type
- for each layer
- for all visible layers altogether
- loading image/image sequences
- referencing image
- manage version of loaded containers

## Setup

The Photoshop integration requires two components to work; `extension` and `server`.

### Extension

There need to be done several setup steps first before running the AYON integration. First your active project need to have Photoshop (PS) defined in the project anatomy as an available tool including its filepath to the executable (being set by default). Secondly its neccessary to install PS extension manager which simplifies future extensions installation / management for PS. We skip the first step due to the fact it should be already preset by TD / Admin. And we jump to the second step instead right away.

To install the extension manager , open the following link and download it first Anastasyi's Extension Manager. Open Anastasyi's Extension Manager and select Photoshop in the menu. Then go to {path to PS addon}hosts/photoshop/api/extension.zxp. Current location will be most likely in /User/AppData, on WINDOWS it would be something like c:\Users\YOUR_USER\AppData\Local\Ynput\AYON\addons\core_xx.xx.xx\ayon_core\hosts\photoshop\api. On Linux look in ~/.local/share/Ynput/AYON/addons, on Mac ~/Library/Application Support/Ynput/AYON/addons


### Server

The easiest way to get the server and Photoshop launch is with:

```
python -c ^"import ayon_photoshop;ayon_photoshop.launch(""C:\Program Files\Adobe\Adobe Photoshop 2024\Photoshop.exe"")^"
```

`ayon_photoshop.launch` launches the application and server, and also closes the server when Photoshop exists.

## Usage

The Photoshop extension can be found under `Window > Extensions > Ayon`. Once launched you should be presented with a panel like this:

![Ayon Panel](panel.png "AYON Panel")


## Developing

### Extension
When developing the extension you can load it [unsigned](https://github.com/Adobe-CEP/CEP-Resources/blob/master/CEP_9.x/Documentation/CEP%209.0%20HTML%20Extension%20Cookbook.md#debugging-unsigned-extensions).

When signing the extension you can use this [guide](https://github.com/Adobe-CEP/Getting-Started-guides/tree/master/Package%20Distribute%20Install#package-distribute-install-guide).

```
ZXPSignCmd -selfSignedCert NA NA Ayon Ayon-Photoshop Ayon extension.p12
ZXPSignCmd -sign {path to ayon-photoshop}\client\ayon-photoshop\api\extension {path to ayon-photoshop}\client\ayon-photoshop\api\extension.zxp extension.p12 ayon
```

### Plugin Examples

These plugins were made with the [polly config](https://github.com/mindbender-studio/config). To fully integrate and load, you will have to use this config and add `image` to the [integration plugin](https://github.com/mindbender-studio/config/blob/master/polly/plugins/publish/integrate_asset.py).

For easier debugging of Javascript:
https://community.adobe.com/t5/download-install/adobe-extension-debuger-problem/td-p/10911704?page=1
Add --enable-blink-features=ShadowDOMV0,CustomElementsV0 when starting Chrome
then localhost:8078 (port set in `ayon-photoshop}\client\ayon-photoshop\api\.debug`)

Or use Visual Studio Code https://medium.com/adobetech/extendscript-debugger-for-visual-studio-code-public-release-a2ff6161fa01

Or install CEF client from https://github.com/Adobe-CEP/CEP-Resources/tree/master/CEP_9.x

## Resources
- https://github.com/lohriialo/photoshop-scripting-python
- https://www.adobe.com/devnet/photoshop/scripting.html
- https://github.com/Adobe-CEP/Getting-Started-guides
- https://github.com/Adobe-CEP/CEP-Resources
Loading

0 comments on commit 862e478

Please sign in to comment.