PhpStorm有某种奇怪的行为让我发疯.我的项目设置有一个source和一个test目录.该source目录应该是高效的代码,而test目录应该包含所有的phpunit测试.
在这些目录中,文件夹结构是镜像的 - 如果我有一个类\foo\Bar,那么有
src/foo/Bar.php和test/foo/BarTest.php.
我已经在PhpStorm中标记src/并test/作为源和测试目录,但是,每次我想为类创建一个新的测试套件时,PhpStorm默认将测试类放入被测试类src/旁边的目录中.
可以改变它,但是当相同的目录test/还不存在时,它会变得更烦人.而不是创建它,PhpStorm将拒绝为我创建该测试套件.
也许我误解了PhpStorm中测试管理背后的概念 - 因为它不会是那么糟糕的用户体验.
有什么我做错了,或者我可以配置什么来减轻这种情况?
我在 GCP 中使用 terraform 创建了一个全局静态 IP 地址。但是,当我尝试将其分配给 GKE 集群内的入口控制器时,它会被忽略:
这是我的 kubernetes 配置:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: homefully-ingress
annotations:
kubernetes.io/ingress.global-static-ip-name: "homefully-ingress-root"
labels:
app: homefully-ingress
spec:
# ...
Run Code Online (Sandbox Code Playgroud)
此处引用的 IP 地址如下所示:
NAME REGION ADDRESS STATUS
homefully-ingress-root europe-west3 35.234.83.106 RESERVED
Run Code Online (Sandbox Code Playgroud)
然而,进入并没有使用该IP地址,但另一个随机一个。这是一个相当大的问题,因为我没有使用谷歌的 DNS 服务,所以我需要依赖静态 IP。
相反,这就是我得到的:
Name: homefully-ingress
Namespace: default
Address: 35.227.252.112
Default backend: auth-proxy-staging:4180 (10.4.0.7:4180)
Rules:
Host Path Backends
---- ---- --------
adminpanel.homefully.tech
homefully-management-frontend-website-staging:80 (10.4.2.7:80)
Annotations:
kubectl.kubernetes.io/last-applied-configuration: {"apiVersion":"extensions/v1beta1","kind":"Ingress","metadata":{"annotations":{"kubernetes.io/ingress.class":"gce","kubernetes.io/ingress.global-static-ip-name":"homefully-ingress-root"},"labels":{"app":"homefully-ingress"},"name":"homefully-ingress","namespace":"default"},"spec":{"backend":{"serviceName":"auth-proxy-staging","servicePort":4180},"rules":[{"host":"adminpanel.homefully.tech","http":{"paths":[{"backend":{"serviceName":"homefully-management-frontend-website-staging","servicePort":80}}]}}]}}
kubernetes.io/ingress.class: gce
kubernetes.io/ingress.global-static-ip-name: homefully-ingress-root
ingress.kubernetes.io/backends: {"k8s-be-31611--026ed6556721059b":"Unknown","k8s-be-32450--026ed6556721059b":"Unknown"}
ingress.kubernetes.io/forwarding-rule: k8s-fw-default-homefully-ingress--026ed6556721059b
ingress.kubernetes.io/target-proxy: k8s-tp-default-homefully-ingress--026ed6556721059b
ingress.kubernetes.io/url-map: …Run Code Online (Sandbox Code Playgroud) google-cloud-platform google-kubernetes-engine kubernetes-ingress
在我的公司,我们在一个私人github组织中有很多存储库(公共访问不可访问).理想情况下,所有开发人员都应具有该组织中所有存储库的读取权限,同时只具有对其项目存储库的写入权限.
为此,我建立了几个github团队(每个项目).每个团队都应具有某些存储库的写入权限(在repo设置中易于配置),但对所有其他存储库具有读取权限.我正在努力解决这个问题,因为我只能授予对每个存储库的读访问权限.这不仅令人痛苦(因为我们有很多存储库),而且在创建新的repos时也不会自动工作.
有没有什么,我想错过正确设置吗?
谢谢,马蒂亚斯
我正在使用 Apache HTTP Components Client 4.5.7 来请求包含双斜杠的 URL。当我查看电线日志时,我看到双斜线被“固定”为只有一个斜线。不幸的是,这对我来说不是可取的行为,因为它会导致请求失败。
背景:我从 Thumbor(一个图像调整服务器)请求调整大小的图像。Thumbor URL 基本上如下所示:
这个 url 将导致拇指下载http://host.com/image.jpg并调整其大小以适应 200x200 像素。
代码如下所示:
HttpGet httpUriRequest = new HttpGet("http://thumbors-server/usafe/200x200/http://host.com/image.jpg");
CLIENT.execute(httpUriRequest, responseHandler);
Run Code Online (Sandbox Code Playgroud)
httpclient 发送到服务器的内容。然而,这是:
DEBUG o.a.h.headers http-outgoing-1 >> GET /unsafe/300x300/http:/host.com/image1.jpg HTTP/1.1
DEBUG o.a.h.headers http-outgoing-1 >> Host: localhost:4002
DEBUG o.a.h.headers http-outgoing-1 >> Connection: Keep-Alive
DEBUG o.a.h.headers http-outgoing-1 >> User-Agent: Apache-HttpClient/4.5.7 (Java/11.0.1)
DEBUG o.a.h.headers http-outgoing-1 >> Accept-Encoding: gzip,deflate
Run Code Online (Sandbox Code Playgroud)
请注意,http://host.com 被替换为http://host.com(注意缺少的第二个 /)。这将导致请求失败。
如何阻止 http 客户端“修复”我传递给它的 url?