Skip to content

Conversation

@Zigr1
Copy link

@Zigr1 Zigr1 commented Jan 19, 2026

Summary of changes:

  • Update repo to ESM modules
  • Move to Vitest from Jest
  • Fix web folder types to ESM syntax
  • Add basic PR checks and deployment pipelines for AIO

Notes to reviewers

🛈 When you've finished leaving feedback, please add a final comment to the PR tagging the author, letting them know that you have finished leaving feedback

Copy link

@kai-nguyen-aligent kai-nguyen-aligent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work, @Zigr1!

push:
branches:
- production
- staging

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Zigr1 We're trying to move to trunk-based development. Can we make changes in our pipeline so:

  1. We deploy to staging on pushing to main branch
  2. We deploy to production on creating a Github release.
  3. We will not have production or staging branches anymore.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AdamJHall is this the approach we're taking for appbuilder projects too?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how it will get the correct set of env vars?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Zigr1, Yep I think this is the way forward for all int repos.

Regarding how to get the right env, we might be able to do it like:

 environment: ${{ github.event_name == 'release' && 'production' || 'staging' }}

REF: https://stackoverflow.com/questions/79541731/what-is-the-ternary-operator-equivalent-in-github-actions

pull_request:
branches:
- staging
- production

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can simplify this so this workflow runs on ALL pull request

@@ -0,0 +1,65 @@
version: 2
updates:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see this file in any other project. Do we have a reason for having this in this repo/template only?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

actually, I took .github and pipeline files from APS project
@AdamJHall could you help answering here?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ideally we should have dependabot everywhere, as it makes sure you keep all your dependencies up to date and secure.

There is an issue with the noise it creates on client projects and because it assigns to users based on the CODEOWNERS file.

Since this is a template I would HIGHLY recommend having it here, and assigning to the microservices team via CODEOWNERS so that everything stays up to date.

CC: @TheOrangePuff just to get your thoughts

import { createContext, useContext, useEffect, useState } from 'react';
import { RuntimeScript, type Ims } from '../runtime/RuntimeScript';
import { mockIms, mockRuntime } from '../runtime/runtimeMocks';
import { RuntimeScript, type Ims } from '../runtime/RuntimeScript.ts';

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought this should be .js file instead of .ts. How do you think, @Zigr1 ?

package.json Outdated
"scripts": {
"lint": "eslint .",
"lint:fix": "npm run lint -- --fix",
"test": "vitest --passWithNoTests --coverage ./test",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we shouldn't pass this --passWithNoTests here. I would prefer this to be in vite.config.js (with a comment) instead.

README.md Outdated
- [ ] Deployment pipeline
- [ ] Pre-commit hooks
- [x] Deployment pipeline
- [x] Pre-commit hooks

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you test the hooks, Greg? I'm not sure if we need a prepare script in package.json or not 🤔

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right, I confused this with appbuilder hooks

Copy link

@nathaniel-cruz-aligent nathaniel-cruz-aligent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a minor typo error

package.json Outdated
"scripts": {
"lint": "eslint .",
"lint:fix": "npm run lint -- --fix",
"test": "vitest --passWithNoTests --coverage ./test",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"test": "vitest --passWithNoTests --coverage ./test",
"test": "vitest --passWithNoTests --coverage ./tests",

The test script references ./test but the tests are in a ./tests directory

@nathaniel-cruz-aligent
Copy link

@Zigr1 kindly resolve the conflicts

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.

4 participants