-
-
Notifications
You must be signed in to change notification settings - Fork 21
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
Add support for building PHAR files and associated tests #40
base: main
Are you sure you want to change the base?
Conversation
@ramsey, I'm going to write a Github workflow to upload the PHAR file to the Github release. Can you tell me more about your workflow when you create a release? Do you manually create a tag, push it, and then create a release? Or do you directly do all of this using Github's releases page? How do you create the changelog? I'm considering using https://github.com/svenstaro/upload-release-action/ and I see it can handle existing releases. It will work with an existing release and just add PHAR file. Optionally, it can also create the release when you push a tag and you can go in and fill the changelog. (There are changelog generators as well but that's a different issue.) If you can explain your process, I can adapt the workflow to fit it or suggest an approach that can work reasonably well with it. |
Right now, the process is all manual, but I have been considering other tools to help automate releases. |
Got it. So, what do you think of a workflow that when you create a release manually, a GitHub action runs, creates the PHAR file, and uploads it to the release? |
That sounds good to me. |
Now that I've finally gotten around to fixing the nasty symfony/console bug, I can focus on this again. What's the status of your PR? It sounds like you still had some things left to finish, according to the comments above. Is that correct? |
@ramsey, it's been a while for me as well but I was finally able to spend time today catching up with my work. The short answer to your question is that the Box build works well and I can write a workflow to package it with a release. The generated phar file is about 5 MB in size right now and I will look into optimizing it. Can you give me an idea of how you create releases right now? I don't see a Github action for this, so I assume you create releases manually. I plan to write a workflow that will fire on the release event, create the phar file, and attach it to the release (probably using the action-gh-release but I'm still looking into it). I am sharing all this so that if you have any reservations about any of these, let me know. |
Github workflows contains invalid command options. This commit also adds phars.xml that locks the version of box we install.
box 4.1 depends on PHP 8.1, and we work with PHP 7.4+
@ramsey, it's a good sign that the updated integration tests are working along with phar files. I can work on packaging next but I wanted to check on a few things.
Please share your thoughts on the above. |
a39279f
to
d9b11fd
Compare
Description
This change adds a box configuration file so that we can build PHAR's as discussed in #25. There is also associated CI changes to test the PHAR file.
Motivation and context
This was discussed in #25.
How has this been tested?
I modified the expect files to run the PHAR file instead of entrypoint and ran the tests. All the tests passed. I also tested the PHAR file manually. This change is also implemented in the CI workflow.
Types of changes
PR checklist