-
Notifications
You must be signed in to change notification settings - Fork 238
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
[WORKFLOW] SDK-Core/Subgraph CI Cleanup Fixes #1303
Conversation
## package.json - remove sdk-core from root package.json tests ## ci.feature - remove eager testing in ci.feature ## ci.canary - remove eager testing in ci.canary - call.setup-deploy-and-test-local-subgraph.yml only tests local subgraphs, even schema generation - consolidate `runQueryTests.ts` and `queryTests.ts`
Changelog ReminderReminder to update the CHANGELOG.md for any of the modified packages in this PR.
|
- run checks prior to deploying subgraph: - ensure desired subgraph works w/ previous versions - ensure subgraph mapping logic is intact and queries can be called on local subgraph - run checks prior to creating sdk-core release draft - test sdk-core schema is consistent with deployed v1 - run sdk-core unit tests - rename `call.setup-deploy-and-test-local-subgraph.yml` to `call.test-local-subgraph.yml` - remove SDK-Core integration tests in call.test-local-subgraph - cleanup ci.canary given changes - cleanup ci.feature given changes - delete ci.pre-release-sdk-core/subgraph
Looks like this file is out of date though, but since |
echo github.head_ref: ${{ github.head_ref }} | ||
echo github.base_ref: ${{ github.base_ref }} | ||
|
||
build-and-test-local-subgraph: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I appreciate the meticulousness, but repeating "key" and "name" with the same information is not necessarily adding anything but noise. I think it's worth to be conscious of not adding syntactic noise too casually.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"build-and-test-local-subgraph:" is almost conflict with "name: Build and Test Subgraph (Release Branch)" on the surface, so not sure.
const {deployContractsAndToken} = require("./deploy-contracts-and-token"); | ||
|
||
deployContractsAndToken() | ||
.then(async (deployer) => { | ||
.then(async ({deployer, tokenDeploymentOutput}) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
okay.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good cleanup. I haven't necessarily reviewed in great details, but do not want to block it neither.
XKCD Comic RelifLink: https://xkcd.com/1303 |
Summary
Currently, we have a bunch of workflow files/tests which were added as defense for publishing an SDK-Core version which is incompatible with the deployed subgraph.
Only acceptable reason for breaking
The only time a breaking change should occur is when the query in SDK-Core contains properties which don't exist in the deployed subgraph.
Proposed Solution
The workflow files added previously have unintended consequences which seem to impact unrelated PRs. Feature and dev builds where no subgraph/SDK-core changes have been made should not break because the deployed subgraph for feature/dev/v1 are out of sync for that particular branch.
As a result, what we truly care about is:
whenever we want to publish a new SDK-Core release, it should not break.
See above for the only reason it should be breaking.
We should only run these tests prior to a publish of SDK-Core or a deployment of a subgraph.
Changes
package.json
ci.feature
ci.canary
runQueryTests.ts
andqueryTests.ts
call.test-local-subgraph
call.deploy-subgraph
call.test-sdk-core
cd.sdk-core-stable.create-release-draft