Skip to content

Commit

Permalink
Merge branch v2.11 into v3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
kevinpollet committed Jun 10, 2024
2 parents 778dc22 + 21c6edc commit 00b1d8b
Show file tree
Hide file tree
Showing 37 changed files with 160 additions and 103 deletions.
14 changes: 13 additions & 1 deletion .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,21 @@ jobs:
with:
fetch-depth: 0

- name: Setup node
uses: actions/setup-node@v4
with:
node-version-file: webui/.nvmrc
cache: yarn
cache-dependency-path: webui/yarn.lock

- name: Build webui
working-directory: ./webui
run: |
yarn install
yarn build
- name: Package webui
run: |
make clean-webui generate-webui
tar czvf webui.tar.gz ./webui/static/
- name: Artifact webui
Expand Down
11 changes: 10 additions & 1 deletion .github/workflows/experimental.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,18 @@ jobs:
with:
fetch-depth: 0

- name: Setup node
uses: actions/setup-node@v4
with:
node-version-file: webui/.nvmrc
cache: yarn
cache-dependency-path: webui/yarn.lock

- name: Build webui
working-directory: ./webui
run: |
make clean-webui generate-webui
yarn install
yarn build
- name: Set up Go ${{ env.GO_VERSION }}
uses: actions/setup-go@v5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-integration.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
fail-fast: true
matrix:
parallel: [12]
index: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 , 11]
index: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

steps:
- name: Check out code
Expand Down
21 changes: 21 additions & 0 deletions .github/workflows/test-unit.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,24 @@ jobs:

- name: Tests
run: make test-unit

test-ui-unit:
runs-on: ubuntu-latest

steps:
- name: Check out code
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v4
with:
node-version-file: webui/.nvmrc
cache: 'yarn'
cache-dependency-path: webui/yarn.lock

- name: UI unit tests
run: |
yarn --cwd webui install
yarn --cwd webui test:unit:ci
2 changes: 1 addition & 1 deletion .github/workflows/validate.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:
env:
GO_VERSION: '1.22'
GOLANGCI_LINT_VERSION: v1.59.0
MISSSPELL_VERSION: v0.4.1
MISSSPELL_VERSION: v0.6.0

jobs:

Expand Down
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
## [v2.11.4](https://github.com/traefik/traefik/tree/v2.11.4) (2024-06-10)
[All Commits](https://github.com/traefik/traefik/compare/v2.11.3...v2.11.4)

**Bug fixes:**
- **[acme]** Update go-acme/lego to v4.17.3 ([#10768](https://github.com/traefik/traefik/pull/10768) by [ldez](https://github.com/ldez))

**Documentation:**
- **[acme]** Fix .com and .org domain examples ([#10635](https://github.com/traefik/traefik/pull/10635) by [rptaylor](https://github.com/rptaylor))
- **[middleware]** Add a note about the Ratelimit middleware's behavior when the sourceCriterion header is missing ([#10752](https://github.com/traefik/traefik/pull/10752) by [dgutzmann](https://github.com/dgutzmann))
- Add user guides link to getting started ([#10785](https://github.com/traefik/traefik/pull/10785) by [norlinhenrik](https://github.com/norlinhenrik))
- Remove helm default repo warning as repo has been long deprecated ([#10772](https://github.com/traefik/traefik/pull/10772) by [corneliusroemer](https://github.com/corneliusroemer))

## [v3.0.1](https://github.com/traefik/traefik/tree/v3.0.1) (2024-05-22)
[All Commits](https://github.com/traefik/traefik/compare/v3.0.0...v3.0.1)

Expand Down
9 changes: 8 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ crossbinary-default: generate generate-webui

.PHONY: test
#? test: Run the unit and integration tests
test: test-unit test-integration
test: test-ui-unit test-unit test-integration

.PHONY: test-unit
#? test-unit: Run the unit tests
Expand All @@ -105,6 +105,13 @@ test-integration: binary
test-gateway-api-conformance: build-image-dirty
GOOS=$(GOOS) GOARCH=$(GOARCH) go test ./integration -v -test.run K8sConformanceSuite -k8sConformance $(TESTFLAGS)

.PHONY: test-ui-unit
#? test-ui-unit: Run the unit tests for the webui
test-ui-unit:
$(MAKE) build-webui-image
docker run --rm -v "$(PWD)/webui/static":'/src/webui/static' traefik-webui yarn --cwd webui install
docker run --rm -v "$(PWD)/webui/static":'/src/webui/static' traefik-webui yarn --cwd webui test:unit:ci

.PHONY: pull-images
#? pull-images: Pull all Docker images to avoid timeout during integration tests
pull-images:
Expand Down
2 changes: 1 addition & 1 deletion docs/check.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM alpine:3.18 as alpine
FROM alpine:3.20

RUN apk --no-cache --no-progress add \
build-base \
Expand Down
2 changes: 1 addition & 1 deletion docs/content/getting-started/quick-start.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,6 @@ IP: 172.27.0.4

!!! question "Where to Go Next?"

Now that you have a basic understanding of how Traefik can automatically create the routes to your services and load balance them, it is time to dive into [the documentation](/ "Link to the docs landing page") and let Traefik work for you!
Now that you have a basic understanding of how Traefik can automatically create the routes to your services and load balance them, it is time to dive into [the user guides](../../user-guides/docker-compose/basic-example/ "Link to the user guides") and [the documentation](/ "Link to the docs landing page") and let Traefik work for you!

{!traefik-for-business-applications.md!}
8 changes: 5 additions & 3 deletions docs/docs.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
FROM alpine:3.14
FROM alpine:3.20

ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/.local/bin
ENV PATH="${PATH}:/venv/bin"

COPY requirements.txt /mkdocs/
WORKDIR /mkdocs
VOLUME /mkdocs

RUN apk --no-cache --no-progress add py3-pip gcc musl-dev python3-dev \
&& pip3 install --user -r requirements.txt
&& python3 -m venv /venv \
&& source /venv/bin/activate \
&& pip3 install -r requirements.txt
56 changes: 17 additions & 39 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,45 +1,23 @@
mkdocs==1.2.2
markdown-include==0.5.1
mkdocs==1.2.4
mkdocs-exclude==1.0.2
mkdocs-traefiklabs>=100.0.7

appdirs==1.4.4
CacheControl==0.12.6
certifi==2020.12.5
chardet==4.0.0
click==8.0.4
colorama==0.4.4
contextlib2==0.6.0
distlib==0.3.1
distro==1.5.0
ghp-import==2.0.2
html5lib==1.1
idna==3.2
importlib-metadata==4.11.3
Jinja2==3.0.0
lockfile==0.12.2
click==8.1.7
colorama==0.4.6
ghp-import==2.1.0
importlib_metadata==7.1.0
Jinja2==3.1.3
Markdown==3.3.6
markdown-include==0.5.1
MarkupSafe==2.1.1
MarkupSafe==2.1.5
mergedeep==1.3.4
mkdocs-bootswatch==1.0
mkdocs-exclude==1.0.2
mkdocs-material-extensions==1.0.3
msgpack==1.0.2
ordered-set==4.0.2
packaging==20.9
pep517==0.10.0
progress==1.5
Pygments==2.11.2
mkdocs-material-extensions==1.3.1
packaging==24.0
Pygments==2.18.0
pymdown-extensions==7.0
pyparsing==2.4.7
python-dateutil==2.8.2
python-dateutil==2.9.0.post0
PyYAML==6.0.1
pyyaml-env-tag==0.1
requests==2.25.1
retrying==1.3.3
six==1.15.0
toml==0.10.2
urllib3==1.26.5
watchdog==2.1.7
webencodings==0.5.1
zipp==3.7.0

pyyaml_env_tag==0.1
six==1.16.0
watchdog==4.0.0
zipp==3.18.1
1 change: 0 additions & 1 deletion docs/runtime.txt

This file was deleted.

2 changes: 1 addition & 1 deletion webui/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM node:20.11
FROM node:20.14
# Current Active LTS release according to (https://nodejs.org/en/about/releases/)

ENV WEBUI_DIR /src/webui
Expand Down
11 changes: 6 additions & 5 deletions webui/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@
"scripts": {
"transfer": "node dev/scripts/transfer.js",
"lint": "eslint --ext .js,.vue src",
"dev": "export APP_ENV='development' && quasar dev",
"dev": "APP_ENV=development quasar dev",
"build-quasar": "quasar build",
"build-staging": "export NODE_ENV='production' && export APP_ENV='development' && yarn build-quasar",
"build": "export NODE_ENV='production' && export APP_ENV='production' && yarn build-quasar && yarn transfer spa",
"build-staging": "NODE_ENV=production APP_ENV=development yarn build-quasar",
"build": "NODE_ENV=production APP_ENV=production yarn build-quasar && yarn transfer spa",
"build:nc": "yarn build",
"test": "echo \"See package.json => scripts for available tests.\" && exit 0",
"test:unit": "vitest",
Expand Down Expand Up @@ -56,6 +56,7 @@
"engines": {
"node": "^20 || ^18 || ^16",
"npm": ">= 6.13.4",
"yarn": ">= 1.21.1"
}
"yarn": ">= 1.22.22"
},
"packageManager": "yarn@1.22.22"
}
2 changes: 1 addition & 1 deletion webui/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ make clean-webui generate-webui # Generate static contents in `webui/static/` fo

## How to build (only for frontend developer)

- prerequisite: [Node 20.11+](https://nodejs.org) [Yarn 1.22.19](https://yarnpkg.com/)
- prerequisite: [Node 20.14+](https://nodejs.org) [Yarn 1.22.22](https://yarnpkg.com/)

- Go to the `webui/` directory

Expand Down
2 changes: 1 addition & 1 deletion webui/src/components/_commons/AvatarState.vue
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import { defineComponent } from 'vue'
export default defineComponent({
name: 'AvatarState',
props: {
state: String
state: { type: String, default: undefined, required: false }
}
})
</script>
Expand Down
7 changes: 4 additions & 3 deletions webui/src/components/_commons/MainTable.vue
Original file line number Diff line number Diff line change
Expand Up @@ -128,13 +128,14 @@ export default defineComponent({
QPageScroller
},
props: {
data: Object,
data: { type: Object, default: undefined, required: false },
columns: Array[Object],
loading: Boolean,
onLoadMore: Function,
onLoadMore: { type: Function, default: undefined, required: false },
endReached: Boolean,
onRowClick: Function
onRowClick: { type: Function, default: undefined, required: false }
},
emits: ['update:currentSort', 'update:currentSortDir'],
data () {
return {
currentSort: 'name',
Expand Down
2 changes: 1 addition & 1 deletion webui/src/components/_commons/PanelHealthCheck.vue
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ export default {
filters: {
},
props: {
data: Object,
data: { type: Object, default: undefined, required: false },
dense: Boolean
},
computed: {
Expand Down
4 changes: 2 additions & 2 deletions webui/src/components/_commons/PanelMiddlewares.vue
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,8 @@
ERRORS
</div>
<q-chip
v-for="(errorMsg, index) in middleware.error"
:key="index"
v-for="(errorMsg, errorIndex) in middleware.error"
:key="errorIndex"
class="app-chip app-chip-error"
>
{{ errorMsg }}
Expand Down
2 changes: 1 addition & 1 deletion webui/src/components/_commons/PanelMirroringServices.vue
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@
export default {
name: 'PanelMirroringServices',
props: {
data: Object,
data: { type: Object, default: undefined, required: false },
dense: Boolean
},
computed: {
Expand Down
4 changes: 2 additions & 2 deletions webui/src/components/_commons/PanelRouterDetails.vue
Original file line number Diff line number Diff line change
Expand Up @@ -146,8 +146,8 @@ export default defineComponent({
AvatarState
},
props: {
data: Object,
protocol: String
data: { type: Object, default: undefined, required: false },
protocol: { type: String, default: undefined, required: false }
},
computed: {
getProviderLogoPath () {
Expand Down
2 changes: 1 addition & 1 deletion webui/src/components/_commons/PanelServers.vue
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ export default defineComponent({
AvatarState
},
props: {
data: Object,
data: { type: Object, default: undefined, required: false },
dense: Boolean,
hasStatus: Boolean
},
Expand Down
2 changes: 1 addition & 1 deletion webui/src/components/_commons/PanelServiceDetails.vue
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ export default defineComponent({
StickyServiceDetails
},
props: {
data: Object,
data: { type: Object, default: undefined, required: false },
dense: Boolean
},
computed: {
Expand Down
10 changes: 5 additions & 5 deletions webui/src/components/_commons/PanelTLS.vue
Original file line number Diff line number Diff line change
Expand Up @@ -77,12 +77,12 @@
{{ domain.main }}
</q-chip>
<q-chip
v-for="(domain, key) in domain.sans"
:key="key"
v-for="(sanDomain, sanKey) in domain.sans"
:key="sanKey"
dense
class="app-chip app-chip-entry-points"
>
{{ domain }}
{{ sanDomain }}
</q-chip>
</div>
</div>
Expand Down Expand Up @@ -130,8 +130,8 @@ export default defineComponent({
BooleanState
},
props: {
data: Object,
protocol: String
data: { type: Object, default: undefined, required: false },
protocol: { type: String, default: undefined, required: false }
}
})
</script>
Expand Down
2 changes: 1 addition & 1 deletion webui/src/components/_commons/PanelWeightedServices.vue
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ export default defineComponent({
name: 'PanelWeightedServices',
components: {},
props: {
data: Object,
data: { type: Object, default: undefined, required: false },
dense: Boolean
},
computed: {
Expand Down
2 changes: 1 addition & 1 deletion webui/src/components/_commons/ProviderIcon.vue
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { defineComponent } from 'vue'
export default defineComponent({
props: {
name: String
name: { type: String, default: undefined, required: false }
},
computed: {
getLogoPath () {
Expand Down
1 change: 1 addition & 0 deletions webui/src/components/_commons/SidePanel.vue
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ export default defineComponent({
props: {
isOpen: Boolean
},
emits: ['onClose'],
methods: {
close () {
this.$emit('onClose')
Expand Down
Loading

0 comments on commit 00b1d8b

Please sign in to comment.