Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add packaging guide for aio app pack #320

Merged
merged 4 commits into from Mar 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 4 additions & 0 deletions gatsby-config.js
Expand Up @@ -98,6 +98,10 @@ module.exports = {
{
"title": "Event hooks for App Builder Applications",
"path": "guides/app-hooks.md"
},
{
"title": "Packaging for Developer Distribution",
"path": "guides/packaging.md"
}
]
},
Expand Down
46 changes: 46 additions & 0 deletions src/pages/guides/packaging.md
@@ -0,0 +1,46 @@
---
keywords:
- Adobe I/O
- Extensibility
- ISV
- Developer Tooling
---


# Packaging for Developer Distribution

To get your App Builder app listed for [Adobe Developer Distribution](https://developer.adobe.com/developer-distribution/), you will need to package it.

The `aio app pack` command will verify and bundle your app. In the root of your app folder, run this command:

```sh
aio app pack
```

After this command completes running, you can find the app package in your app folder as: `dist/app.zip`.

## App Validation

1. `app.config.yaml`
- will be checked if it is in a valid format, and will show specific config errors for you to fix, if necessary
2. `package.json` version
- application version format must be `X.Y.Z`, where X, Y, and Z are non-negative integers
3. files to be packaged. All the files in your app folder will be packaged EXCEPT:
- files specified in `.gitignore`
- files specified in `.npmignore`
- any `dist` folders
- any dot files (.env, .gitignore, etc)
- any OS junk files (.DS_Store, thumbs.db, etc)
4. event registrations will be validated (if any)

## Hooks

Two new [hooks](./app-hooks.md) have been added for this command, and will run before and after the command is run (respectively):

1. pre-pack
2. post-pack

Your hook handler function will be passed two items:

1. `appConfig` (object) - this contains the config of the current application
2. `artifactsFolder` (string) - this will be the location of the folder containing all the packaging artifacts that will be bundled