Skip to content
New issue

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

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

Already on GitHub? # to your account

PHP SDK integration #485

Merged
merged 80 commits into from
Oct 29, 2024
Merged

PHP SDK integration #485

merged 80 commits into from
Oct 29, 2024

Conversation

roxblnfk
Copy link
Collaborator

@roxblnfk roxblnfk commented May 21, 2024

What was changed

Added runner preparation:

  • configuring SDK version
  • downloading PHP vendor packages
  • downloading RoadRunner
  • do it in a separated directory

Added runner that runs RoadRunner and starts PHP features in a single run.

Implemented features:

Checklist

How to run

go build -o temporal-features
./temporal-features run --lang php

Windows:

go build -o temporal-features.exe
./temporal-features.exe run --lang php

…erun RoadRunner; add `query/timeout_due_to_no_active_workers` feature
# Conflicts:
#	cmd/run.go
#	harness/php/.rr.yaml
#	harness/php/composer.json
#	sdkbuild/php.go
@roxblnfk
Copy link
Collaborator Author

roxblnfk commented Oct 8, 2024

About this option:

Adding this test requires adjustments to the framework because RR needs to be restarted with special worker settings.
I'm not sure it's worth spending time on it right now.

@roxblnfk roxblnfk marked this pull request as ready for review October 8, 2024 22:04
@roxblnfk
Copy link
Collaborator Author

roxblnfk commented Oct 8, 2024

Ready for review.
You don't need to spend effort reviewing PHP files.
For the most part, they are the same tests that are also run in the PHP-SDK.

Copy link
Member

@Sushisource Sushisource left a comment

Choose a reason for hiding this comment

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

Awesome. Having this is super valuable.

sdkbuild/php.go Outdated Show resolved Hide resolved
@roxblnfk roxblnfk changed the title [WIP] PHP SDK integration PHP SDK integration Oct 23, 2024
@roxblnfk
Copy link
Collaborator Author

roxblnfk commented Oct 23, 2024

Looks like system.enableEagerWorkflowStart is not true now. That's why the EagerWorkflow test is failing.

Might be related with #543

@roxblnfk
Copy link
Collaborator Author

BTW is it okay that I'm getting TRUE in the eagerWorkflowStart field of a ServerCapabilities response while the server is started with the option system.enableEagerWorkflowStart=false?

@Sushisource
Copy link
Member

Looks like system.enableEagerWorkflowStart is not true now. That's why the EagerWorkflow test is failing.

Might be related with #543

Ah, interesting... yeah could be.

BTW is it okay that I'm getting TRUE in the eagerWorkflowStart field of a ServerCapabilities response while the server is started with the option system.enableEagerWorkflowStart=false?

Hmm... I think it might be OK even if it's kinda weird. I think the semantics of the API are merely that it can support it at that version, not that it's currently enabled... which does seem a little silly.

@roxblnfk
Copy link
Collaborator Author

@Sushisource now it works 👍

It may be necessary to add dynamicconfig to the Dockerfiles of other SDKs in the future, as done in the PHP Dockerfile. At least for now, the tests there are not failing. 🙂

@roxblnfk roxblnfk merged commit 5ec93eb into temporalio:main Oct 29, 2024
20 checks passed
@roxblnfk roxblnfk deleted the php branch October 29, 2024 19:26
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature Request] PHP harness
2 participants