diff --git a/.circleci/config.yml b/.circleci/config.yml index 21f4159d..7a61cbb8 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -7,14 +7,15 @@ jobs: steps: - checkout - run: - name: Build web assets (frps) - command: make install build - working_directory: web/frps + name: Test and build web assets + command: make web-ci - run: - name: Build web assets (frpc) - command: make install build - working_directory: web/frpc - - run: make + name: Check Go formatting and build binaries + command: | + set -e + make env fmt + git diff --exit-code + make build - run: make alltest workflows: diff --git a/.github/workflows/golangci-lint.yml b/.github/workflows/golangci-lint.yml index 3217c234..36e8d50b 100644 --- a/.github/workflows/golangci-lint.yml +++ b/.github/workflows/golangci-lint.yml @@ -22,12 +22,8 @@ jobs: - uses: actions/setup-node@v6 with: node-version: '22' - - name: Build web assets (frps) - run: make build - working-directory: web/frps - - name: Build web assets (frpc) - run: make build - working-directory: web/frpc + - name: Test and build web assets + run: make web-ci - name: golangci-lint uses: golangci/golangci-lint-action@v9 with: diff --git a/Makefile b/Makefile index 7d949d60..2654fd84 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ NOWEB_TAG = $(shell [ ! -d web/frps/dist ] || [ ! -d web/frpc/dist ] && echo ',n FRP_COMPAT_BASELINE_COUNT ?= 8 FRP_COMPAT_FLOOR_VERSION ?= 0.61.0 -.PHONY: web frps-web frpc-web frps frpc e2e-compatibility-smoke e2e-compatibility e2e-compatibility-floor +.PHONY: web web-ci frps-web frpc-web frps frpc e2e-compatibility-smoke e2e-compatibility e2e-compatibility-floor all: env fmt web build @@ -18,6 +18,9 @@ env: web: frps-web frpc-web +web-ci: + cd web && npm ci && npm run lint:check --workspace frps && npm run lint:check --workspace frpc && npm run test:unit && npm run build --workspace frps && npm run build --workspace frpc + frps-web: $(MAKE) -C web/frps build diff --git a/Makefile.cross-compiles b/Makefile.cross-compiles index d084bbef..eb74d647 100644 --- a/Makefile.cross-compiles +++ b/Makefile.cross-compiles @@ -9,7 +9,7 @@ all: build build: app app: - @$(foreach n, $(os-archs), \ + @set -e; $(foreach n, $(os-archs), \ os=$(shell echo "$(n)" | cut -d : -f 1); \ arch=$(shell echo "$(n)" | cut -d : -f 2); \ extra=$(shell echo "$(n)" | cut -d : -f 3); \ diff --git a/README.md b/README.md index d850c854..c3bc2f60 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,6 @@ [](https://circleci.com/gh/fatedier/frp) [](https://github.com/fatedier/frp/releases) -[](https://goreportcard.com/report/github.com/fatedier/frp) [](https://somsubhra.github.io/github-release-stats/?username=fatedier&repository=frp) [README](README.md) | [中文文档](README_zh.md) @@ -13,14 +12,6 @@ frp is an open source project with its ongoing development made possible entirel
-
-
-
- The complete IDE crafted for professional Go developers
-
-
+
+
-
-
+
+ No proxies match "{{ proxySearch }}" No proxies found
@@ -40,6 +31,14 @@ If you're looking for a meeting recording API, consider checking out [Recall.ai]
an API that records Zoom, Google Meet, Microsoft Teams, in-person meetings, and more.
+
+
+
+ The complete IDE crafted for professional Go developers
+
+Gold Sponsors
-
-
- The complete IDE crafted for professional Go developers
-
-
@@ -42,6 +33,14 @@ If you're looking for a meeting recording API, consider checking out [Recall.ai]
an API that records Zoom, Google Meet, Microsoft Teams, in-person meetings, and more.
+
+
+
+ The complete IDE crafted for professional Go developers
+
+Proxies
- {{ filteredProxies.length }}
+ {{ total }}