Toolkit: Runs Plugin: 'publish' - Undocumented Feature

Created on 20 Aug 2019  Â·  6Comments  Â·  Source: actions/toolkit

The https://github.com/actions/upload-artifact repo action.yml contains the following:

https://github.com/actions/upload-artifact/blob/ec188c28d23c831d7283eb4280a4490eb5010092/action.yml#L11-L12

name: 'Upload artifact'
description: 'Publish files as workflow artifacts'
author: 'GitHub'
inputs: 
  name:
    description: 'Artifact name'
    required: true
  path:
    description: 'Directory containing files to upload'
    required: true
runs:
  plugin: 'publish'

So this leaves me to ask, what other things apart from running NodeJS & Docker Image/Container can we do as Action developers as mentioned in the documentation here - https://help.github.com/en/articles/metadata-syntax-for-github-actions#runs

/cc @chrispat & @damccorm

Most helpful comment

It would feel a little weird to me to have docs saying "we don't support this", but I think a comment in the action.yml file makes sense.

Will add one in checkout, upload-artifact, and download-artifact, I think that's everywhere this is used.

All 6 comments

That's actually intentional - plugins live on our Runner which isn't open sourced yet (though it will be). Basically, certain actions are (a) definitely needed to support the product/expected to be used in a large percentage of workflows, but (b) much easier to implement well directly on the Runner. So while we have this concept of a plugin for a small/select group of first party actions, this is not the path for creating future actions (unless there's a very clear and obvious need).

Thanks for the explanation. Will close this issue for now as its not intended for public consumption by action developers @damccorm

I think this should be re-opened and still be documented nonetheless. Otherwise there'll be more people confused by this.

Agreed -- please at least put a comment in upload-artifact's action.yml, so that nobody else wastes 5-10 minutes trying to figure out what plugin: 'publish' is all about.

It would feel a little weird to me to have docs saying "we don't support this", but I think a comment in the action.yml file makes sense.

Will add one in checkout, upload-artifact, and download-artifact, I think that's everywhere this is used.

That's good enough for me.

On Fri, 6 Sep 2019 at 15:55, Danny McCormick notifications@github.com
wrote:

It would feel a little weird to me to have docs saying "we don't support
this", but I think a comment in the action.yml file makes sense.

Will add one in checkout, upload-artifact, and download-artifact, I think
that's everywhere this is used.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/actions/toolkit/issues/69?email_source=notifications&email_token=AAAANAASZ7547KNONJU7OODQIJOOBA5CNFSM4IN4B7IKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6C5KUA#issuecomment-528864592,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAANAEYRBJPTOLEPGW6RBTQIJOOBANCNFSM4IN4B7IA
.

Was this page helpful?
0 / 5 - 0 ratings