Skip to content
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

Improvements to Varnish configuration #180

Open
wants to merge 7 commits into
base: 2.3
Choose a base branch
from
Open

Conversation

audunmg
Copy link

@audunmg audunmg commented Apr 22, 2024

Hi,
I'm happy to see you're using Varnish, but it seems the VCL configuration is a bit outdated.

I've made a few commits I hope will be helpful.

Summary:

Lastly, I've added some simple varnishtest testcases, these can be ran with the varnishtest utility which comes in the same package as varnish, but it's most powerful when ran using the official docker image in CI.
The tests I've added are just one for checking that the configuration is correct, compiles and passes one requet, and one for demonstrating cookie handling, but more advanced tests can be made, for example to test purging and caching of specific requests and responses.

Please let me know what you think, and if you have inputs to this I'm happy to make changes to make it better for you.

TODO:

  • Ask for Code Review.

This code is different with Varnish 6, since if ttl+grace is expired, vcl_hit will not be called.
Adding cases for more than hit/miss, and adding whether varnish deems
the content cacheable/uncacheable to aid in debugging cache headers.
Not using full path for includes also allows for VCL outside of /etc/varnish, for testing or more flexible configuration.

client c1 {
txreq
rxresp

Choose a reason for hiding this comment

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

can we get an expect here, for the status, or maybe for the x-cache header?

Copy link

sonarcloud bot commented Apr 24, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants