-
Notifications
You must be signed in to change notification settings - Fork 276
php quickstart #3759
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
base: main
Are you sure you want to change the base?
php quickstart #3759
Conversation
|
Gave this a whirl this evening since I was trying really hard to procrastinate on making slides. 🤣
You get an error: "Could not parse version constraint get-binary: Invalid version string "get-binary"
Solution: Add a (EDIT: Oh, interesting, they ARE on two lines in the PR, but the newlines are not translating to
Default Quickstart's Nevertheless, I copy/paste it, as instructed...
This is getting into all sorts of Composer autloading mumbo jumbo, but essentially, two things: a. The Activities and Workflows folders should be under an According to ChatGPT, you can fix this by adding a "Step 0" in Hello World to add the following to Then run:
According to ChatGPT, here's how to fix that one:
Fixing this apparently requires installing the gRPC PECL extension, which I worry is out of reach for many PHP devs, who are beholden to whatever extensions their host provides. :\ Roadrunner seems to have their own, mentioned here: https://docs.roadrunner.dev/docs/plugins/grpc that can be installed just with Composer.
Next steps here might be talking to folks in #php-sdk on Comnmunity Slack. The maintainers of the PHP SDK are in there and I'm sure would love to help get this in shape! |
|
Ok, I see. According to the README on https://github.com/temporalio/sdk-php:
Ok then, I guess we need another step in/around Download RoadRunner to Install the gRPC extension: Then update (I assume, my computer is still churning after the first command :D) |
|
Also cross-posted this to #php-sdk to see if we can get some input from people who use PHP on a regular basis. :) https://temporalio.slack.com/archives/C01LK9FAMM0/p1756277523073449 |
|
Hello. Please note that we also have a money transfer repository, prepared specifically for the upcoming quick start tutorial with PHP. You can find all the necessary code in this repository. In fact, you can install it with a single composer command |
docs/develop/php/set-up.mdx
Outdated
|
|
||
| <p>Using Composer, you can install it with the following command:</p> | ||
| <CodeSnippet language="bash"> | ||
| composer require spiral/roadrunner-cli |
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.
| composer require spiral/roadrunner-cli |
You don't need installing roadrunner-cli package because SDK already includes it.
| <SetupStep code={ | ||
| <> | ||
|
|
||
| <p>See the <a href="https://github.com/roadrunner-server/roadrunner/blob/master/README.md" target="_blank">RoadRunner README file</a> for installation instructions.</p> | ||
|
|
||
| <p>Using Composer, you can install it with the following command:</p> | ||
| <CodeSnippet language="bash"> | ||
| composer require spiral/roadrunner-cli | ||
| ./vendor/bin/rr get-binary | ||
| </CodeSnippet></> | ||
| }> | ||
|
|
||
| ## Download RoadRunner | ||
|
|
||
| See the RoadRunner README file for installation instructions. | ||
| When prompted, enter yes to generate a default `.rr.yaml` file. | ||
| You’ll update it later to configure the Temporal plugin. | ||
|
|
||
| Next, you'll configure a local Temporal Service for development. | ||
|
|
||
| </SetupStep> | ||
|
|
||
| <SetupStep code={ | ||
| <> | ||
| <Tabs> | ||
| <TabItem value="macos" label="macOS" default> | ||
|
|
||
| <p>Install the Temporal CLI using Homebrew:</p> | ||
| <CodeSnippet language="bash"> | ||
| brew install temporal | ||
| </CodeSnippet> | ||
| </TabItem> | ||
|
|
||
| <TabItem value="windows" label="Windows"> | ||
| <p>Download the Temporal CLI archive for your architecture:</p> | ||
| <ul> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=windows&arch=amd64">Windows amd64</a></li> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=windows&arch=arm64">Windows arm64</a></li> | ||
| </ul> | ||
| <p>Extract it and add <code>temporal.exe</code> to your PATH.</p> | ||
| </TabItem> | ||
|
|
||
| <TabItem value="linux" label="Linux"> | ||
| <p>Download the Temporal CLI for your architecture:</p> | ||
| <ul> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=linux&arch=amd64">Linux amd64</a></li> | ||
| <li><a href="https://temporal.download/cli/archive/latest?platform=linux&arch=arm64">Linux arm64</a></li> | ||
| </ul> | ||
| <p>Extract the archive and move the <code>temporal</code> binary into your PATH, for example:</p> | ||
| <CodeSnippet language="bash"> | ||
| sudo mv temporal /usr/local/bin | ||
| </CodeSnippet> | ||
| </TabItem> | ||
| </Tabs> | ||
|
|
||
| </> | ||
| }> |
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.
BTW there is an utility that can automatically download RoadRunner and Temporal CLI binaries:
composer require --dev internal/dload
vendor/bin/dload get rr temporal|
Thanks a lot, @roxblnfk ! I believe the "vision" here is for the instructions + code here to mimic as closely as possible the other Quickstart guides (for example, here's the one for Java) , and part of that is documenting the "vanilla" That being said, if you have any "quick start"-y solutions to the prequel to those commands (e.g. automatically installing the gRPC PECL extension alongside RoadRunner, I'm still fighting with that one :D ) that would definitely be of interest I think. |
Got it. Unfortunately, as a Windows user, I can't help you with installing gRPC on Mac OS. I also checked if it could be done through PIE and concluded that it doesn't work on Windows.
|
|
Shared in #php-sdk, https://github.com/shivammathur/homebrew-extensions might be a solution to solving macOS woes around the homebrew / PECL extension kerfuffle. |
|
Thanks!! I ran into some of the same friction while going through it so I paused on it. Going to get back to it and aiming to make it frictionless this week. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|


What does this PR do?
https://temporal-documentation-git-php-quickstart.preview.thundergun.io
Notes to reviewers