Skip to content

Add ACCDE build support by delegating compile and app-config to msaccess-vcs-build - #45

Open
pflugs30 wants to merge 1 commit into
DecimalTurn:mainfrom
pflugs30:feat/accde-build-support
Open

Add ACCDE build support by delegating compile and app-config to msaccess-vcs-build#45
pflugs30 wants to merge 1 commit into
DecimalTurn:mainfrom
pflugs30:feat/accde-build-support

Conversation

@pflugs30

Copy link
Copy Markdown

Implements the approach agreed on #14.

What

Adds Microsoft Access .accde (compiled) build support. Source folders whose
name ends in .accde are detected, built from source, and compiled to an ACCDE.

Per the discussion on #14, Access builds now delegate both compile and
prepare (app-config) to the msaccess-vcs-build subaction rather than
carrying local build scripts, so VBA-Build stays a thin wrapper.

Changes

  • Main.ps1 tracks .accde folders separately and emits access-de-folders
    and has-access-de outputs.
  • action.yml adds a "Build Access ACCDE (if detected)" step that calls the
    subaction with compile: true. Three new inputs are threaded through to both
    the .accdb and .accde build paths:
    • app-config - application config file (database properties, procedures to
      run, modules/references to remove).
    • vcs-url - the msaccess-vcs-addin release to use for Access builds.
    • vcs-sha - optional expected SHA256 of the add-in asset (named per your
      request on Support .accde files #14).
  • subactions/msaccess-vcs-build-all/action.yml bumps its pin to
    msaccess-vcs-build@v1.1.0 (which runs prepare before compile, so a single
    call now handles build + prepare + compile), forwards app-config to each
    call, and renames expected-sha256 -> vcs-sha.
  • Adds an AccessDatabase.accde source fixture and an example
    Application-Config.json; tests.yml reports ACCDE detection.

Points to confirm

  • vcs-url default. I set it to the upstream joyfullservice
    msaccess-vcs-addin v5.0.1 release (immutable tag). Happy to change this
    if you'd prefer a different default.
  • The subaction still targets the AccessCodeLib msaccess-vcs-build action,
    now pinned to v1.1.0, which added the prepare-before-compile behavior this
    relies on.

Testing

tests.yml builds the new .accde fixture from source with compile: true.
The Application-Config.json is included as a documented example; the default
test run does not pass app-config, matching the existing .accdb path.

…ess-vcs-build

Detect source folders whose name ends in .accde, build them from source, and
compile them to an ACCDE. Access builds now delegate compile and prepare to the
msaccess-vcs-build subaction rather than local scripts:

- Main.ps1 tracks .accde folders separately and emits access-de-folders /
  has-access-de outputs.
- The main action adds a "Build Access ACCDE (if detected)" step that calls the
  subaction with compile:true, plus new app-config, vcs-url, and vcs-sha inputs
  threaded through to both the .accdb and .accde build paths.
- The subaction bumps its pin to msaccess-vcs-build@v1.1.0 (prepare-before-compile),
  forwards app-config to each call, and renames expected-sha256 to vcs-sha.
- vcs-url now defaults to the joyfullservice msaccess-vcs-addin v5.0.1 release.
- Adds an AccessDatabase.accde source fixture and an example Application-Config.json.
@pflugs30

Copy link
Copy Markdown
Author

full disclosure: I've been using Github Copilot extensively to help me make the PRs across the multiple layers. I've reviewed everything manually, but let me know if you have any questions.

@DecimalTurn

Copy link
Copy Markdown
Owner

Thanks for the PR, I've just approved the workflow run and I should be able to review this soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants