diff --git a/.github/workflows/license-eyes.yml b/.github/workflows/license-eyes.yml new file mode 100644 index 00000000..320a24e3 --- /dev/null +++ b/.github/workflows/license-eyes.yml @@ -0,0 +1,38 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +--- +name: License Check +on: [push, pull_request_target] + +jobs: + license-check: + name: "License Check" + runs-on: ubuntu-latest + steps: + - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )" + if: ${{ github.event_name != 'pull_request_target' }} + uses: actions/checkout@v3 + - name: Checkout ${{ github.ref }} ( ${{ github.event.pull_request.head.sha }} ) + if: ${{ github.event_name == 'pull_request_target' }} + uses: actions/checkout@v3 + with: + ref: ${{ github.event.pull_request.head.sha }} + - name: Check License + uses: apache/skywalking-eyes@v0.2.0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.licenserc.yaml b/.licenserc.yaml index 29dd329b..cd80d5ce 100644 --- a/.licenserc.yaml +++ b/.licenserc.yaml @@ -4,7 +4,6 @@ header: copyright-owner: Apache Software Foundation paths-ignore: - - '.git' - '.licenserc.yaml' - '.gitignore' - 'dist' @@ -17,6 +16,7 @@ header: - "**/*.json" - "**/*.txt" - '**/.helmignore' + - 'helm-charts/doris-operator/crds/doris.selectdb.com_dorisclusters.yaml' - 'LICENSE' - 'NOTICE' - 'PROJECT' diff --git a/api/disaggregated/v1/groupversion_info.go b/api/disaggregated/v1/groupversion_info.go index 195d8913..91e94302 100644 --- a/api/disaggregated/v1/groupversion_info.go +++ b/api/disaggregated/v1/groupversion_info.go @@ -15,22 +15,6 @@ // specific language governing permissions and limitations // under the License. -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - // Package v1 contains API Schema definitions for the doris v1 API group // +kubebuilder:object:generate=true // +groupName=disaggregated.cluster.doris.com diff --git a/client/clientset/versioned/clientset.go b/client/clientset/versioned/clientset.go index 8ba68272..da849b67 100644 --- a/client/clientset/versioned/clientset.go +++ b/client/clientset/versioned/clientset.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package versioned diff --git a/client/clientset/versioned/fake/clientset_generated.go b/client/clientset/versioned/fake/clientset_generated.go index c955e6c1..19edd834 100644 --- a/client/clientset/versioned/fake/clientset_generated.go +++ b/client/clientset/versioned/fake/clientset_generated.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package fake diff --git a/client/clientset/versioned/fake/doc.go b/client/clientset/versioned/fake/doc.go index ecd85aa7..5bfd1ed4 100644 --- a/client/clientset/versioned/fake/doc.go +++ b/client/clientset/versioned/fake/doc.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. // This package has the automatically generated fake clientset. diff --git a/client/clientset/versioned/fake/register.go b/client/clientset/versioned/fake/register.go index 3fc4f725..4ec7717a 100644 --- a/client/clientset/versioned/fake/register.go +++ b/client/clientset/versioned/fake/register.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package fake diff --git a/client/clientset/versioned/scheme/doc.go b/client/clientset/versioned/scheme/doc.go index b075ce02..ea6deedb 100644 --- a/client/clientset/versioned/scheme/doc.go +++ b/client/clientset/versioned/scheme/doc.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. // This package contains the scheme of the automatically generated clientset. diff --git a/client/clientset/versioned/scheme/register.go b/client/clientset/versioned/scheme/register.go index a01abd7b..a4c0c365 100644 --- a/client/clientset/versioned/scheme/register.go +++ b/client/clientset/versioned/scheme/register.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package scheme diff --git a/client/clientset/versioned/typed/disaggregated/v1/disaggregated_client.go b/client/clientset/versioned/typed/disaggregated/v1/disaggregated_client.go index 590c7d02..2b65cb2b 100644 --- a/client/clientset/versioned/typed/disaggregated/v1/disaggregated_client.go +++ b/client/clientset/versioned/typed/disaggregated/v1/disaggregated_client.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package v1 diff --git a/client/clientset/versioned/typed/disaggregated/v1/doc.go b/client/clientset/versioned/typed/disaggregated/v1/doc.go index e736a2eb..f5e1c019 100644 --- a/client/clientset/versioned/typed/disaggregated/v1/doc.go +++ b/client/clientset/versioned/typed/disaggregated/v1/doc.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. // This package has the automatically generated typed clients. diff --git a/client/clientset/versioned/typed/disaggregated/v1/dorisdisaggregatedcluster.go b/client/clientset/versioned/typed/disaggregated/v1/dorisdisaggregatedcluster.go index 91209453..c68c6d93 100644 --- a/client/clientset/versioned/typed/disaggregated/v1/dorisdisaggregatedcluster.go +++ b/client/clientset/versioned/typed/disaggregated/v1/dorisdisaggregatedcluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package v1 diff --git a/client/clientset/versioned/typed/disaggregated/v1/fake/doc.go b/client/clientset/versioned/typed/disaggregated/v1/fake/doc.go index bbc3b3ba..a2bbbc75 100644 --- a/client/clientset/versioned/typed/disaggregated/v1/fake/doc.go +++ b/client/clientset/versioned/typed/disaggregated/v1/fake/doc.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. // Package fake has the automatically generated clients. diff --git a/client/clientset/versioned/typed/disaggregated/v1/fake/fake_disaggregated_client.go b/client/clientset/versioned/typed/disaggregated/v1/fake/fake_disaggregated_client.go index ce8f7e34..63bddc3d 100644 --- a/client/clientset/versioned/typed/disaggregated/v1/fake/fake_disaggregated_client.go +++ b/client/clientset/versioned/typed/disaggregated/v1/fake/fake_disaggregated_client.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package fake diff --git a/client/clientset/versioned/typed/disaggregated/v1/fake/fake_dorisdisaggregatedcluster.go b/client/clientset/versioned/typed/disaggregated/v1/fake/fake_dorisdisaggregatedcluster.go index 97985034..d2537ce7 100644 --- a/client/clientset/versioned/typed/disaggregated/v1/fake/fake_dorisdisaggregatedcluster.go +++ b/client/clientset/versioned/typed/disaggregated/v1/fake/fake_dorisdisaggregatedcluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package fake diff --git a/client/clientset/versioned/typed/disaggregated/v1/generated_expansion.go b/client/clientset/versioned/typed/disaggregated/v1/generated_expansion.go index d6e82cdd..12466191 100644 --- a/client/clientset/versioned/typed/disaggregated/v1/generated_expansion.go +++ b/client/clientset/versioned/typed/disaggregated/v1/generated_expansion.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package v1 diff --git a/client/clientset/versioned/typed/doris/v1/doc.go b/client/clientset/versioned/typed/doris/v1/doc.go index e736a2eb..f5e1c019 100644 --- a/client/clientset/versioned/typed/doris/v1/doc.go +++ b/client/clientset/versioned/typed/doris/v1/doc.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. // This package has the automatically generated typed clients. diff --git a/client/clientset/versioned/typed/doris/v1/doris_client.go b/client/clientset/versioned/typed/doris/v1/doris_client.go index 859efb43..f66902e9 100644 --- a/client/clientset/versioned/typed/doris/v1/doris_client.go +++ b/client/clientset/versioned/typed/doris/v1/doris_client.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package v1 diff --git a/client/clientset/versioned/typed/doris/v1/doriscluster.go b/client/clientset/versioned/typed/doris/v1/doriscluster.go index a007c4de..f75c2063 100644 --- a/client/clientset/versioned/typed/doris/v1/doriscluster.go +++ b/client/clientset/versioned/typed/doris/v1/doriscluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package v1 diff --git a/client/clientset/versioned/typed/doris/v1/fake/doc.go b/client/clientset/versioned/typed/doris/v1/fake/doc.go index bbc3b3ba..a2bbbc75 100644 --- a/client/clientset/versioned/typed/doris/v1/fake/doc.go +++ b/client/clientset/versioned/typed/doris/v1/fake/doc.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. // Package fake has the automatically generated clients. diff --git a/client/clientset/versioned/typed/doris/v1/fake/fake_doris_client.go b/client/clientset/versioned/typed/doris/v1/fake/fake_doris_client.go index 41db66f2..45777fac 100644 --- a/client/clientset/versioned/typed/doris/v1/fake/fake_doris_client.go +++ b/client/clientset/versioned/typed/doris/v1/fake/fake_doris_client.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package fake diff --git a/client/clientset/versioned/typed/doris/v1/fake/fake_doriscluster.go b/client/clientset/versioned/typed/doris/v1/fake/fake_doriscluster.go index 686a0285..9fd65e86 100644 --- a/client/clientset/versioned/typed/doris/v1/fake/fake_doriscluster.go +++ b/client/clientset/versioned/typed/doris/v1/fake/fake_doriscluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package fake diff --git a/client/clientset/versioned/typed/doris/v1/generated_expansion.go b/client/clientset/versioned/typed/doris/v1/generated_expansion.go index 9d710a6f..5816598b 100644 --- a/client/clientset/versioned/typed/doris/v1/generated_expansion.go +++ b/client/clientset/versioned/typed/doris/v1/generated_expansion.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by client-gen. DO NOT EDIT. package v1 diff --git a/client/informers/externalversions/disaggregated/interface.go b/client/informers/externalversions/disaggregated/interface.go index 4fa54f34..ea0ccc3b 100644 --- a/client/informers/externalversions/disaggregated/interface.go +++ b/client/informers/externalversions/disaggregated/interface.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package disaggregated diff --git a/client/informers/externalversions/disaggregated/v1/dorisdisaggregatedcluster.go b/client/informers/externalversions/disaggregated/v1/dorisdisaggregatedcluster.go index 59602ae4..f6198783 100644 --- a/client/informers/externalversions/disaggregated/v1/dorisdisaggregatedcluster.go +++ b/client/informers/externalversions/disaggregated/v1/dorisdisaggregatedcluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package v1 diff --git a/client/informers/externalversions/disaggregated/v1/interface.go b/client/informers/externalversions/disaggregated/v1/interface.go index a3e7f8ba..8627b168 100644 --- a/client/informers/externalversions/disaggregated/v1/interface.go +++ b/client/informers/externalversions/disaggregated/v1/interface.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package v1 diff --git a/client/informers/externalversions/doris/interface.go b/client/informers/externalversions/doris/interface.go index 11f8844c..69c8130c 100644 --- a/client/informers/externalversions/doris/interface.go +++ b/client/informers/externalversions/doris/interface.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package doris diff --git a/client/informers/externalversions/doris/v1/doriscluster.go b/client/informers/externalversions/doris/v1/doriscluster.go index fd20171d..ea511138 100644 --- a/client/informers/externalversions/doris/v1/doriscluster.go +++ b/client/informers/externalversions/doris/v1/doriscluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package v1 diff --git a/client/informers/externalversions/doris/v1/interface.go b/client/informers/externalversions/doris/v1/interface.go index f19e297b..9512e370 100644 --- a/client/informers/externalversions/doris/v1/interface.go +++ b/client/informers/externalversions/doris/v1/interface.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package v1 diff --git a/client/informers/externalversions/factory.go b/client/informers/externalversions/factory.go index cf613fee..1537cb68 100644 --- a/client/informers/externalversions/factory.go +++ b/client/informers/externalversions/factory.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package externalversions diff --git a/client/informers/externalversions/generic.go b/client/informers/externalversions/generic.go index ced5084d..c382db34 100644 --- a/client/informers/externalversions/generic.go +++ b/client/informers/externalversions/generic.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package externalversions diff --git a/client/informers/externalversions/internalinterfaces/factory_interfaces.go b/client/informers/externalversions/internalinterfaces/factory_interfaces.go index 07d14749..fcee53ac 100644 --- a/client/informers/externalversions/internalinterfaces/factory_interfaces.go +++ b/client/informers/externalversions/internalinterfaces/factory_interfaces.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by informer-gen. DO NOT EDIT. package internalinterfaces diff --git a/client/listers/disaggregated/v1/dorisdisaggregatedcluster.go b/client/listers/disaggregated/v1/dorisdisaggregatedcluster.go index 5e3e203e..f9e3a5fd 100644 --- a/client/listers/disaggregated/v1/dorisdisaggregatedcluster.go +++ b/client/listers/disaggregated/v1/dorisdisaggregatedcluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by lister-gen. DO NOT EDIT. package v1 diff --git a/client/listers/disaggregated/v1/expansion_generated.go b/client/listers/disaggregated/v1/expansion_generated.go index 5114164b..74cc2417 100644 --- a/client/listers/disaggregated/v1/expansion_generated.go +++ b/client/listers/disaggregated/v1/expansion_generated.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by lister-gen. DO NOT EDIT. package v1 diff --git a/client/listers/doris/v1/doriscluster.go b/client/listers/doris/v1/doriscluster.go index dce571ea..b9ae0429 100644 --- a/client/listers/doris/v1/doriscluster.go +++ b/client/listers/doris/v1/doriscluster.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by lister-gen. DO NOT EDIT. package v1 diff --git a/client/listers/doris/v1/expansion_generated.go b/client/listers/doris/v1/expansion_generated.go index 5038cb58..b5df8597 100644 --- a/client/listers/doris/v1/expansion_generated.go +++ b/client/listers/doris/v1/expansion_generated.go @@ -1,18 +1,19 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. // Code generated by lister-gen. DO NOT EDIT. package v1 diff --git a/cmd/operator/main.go b/cmd/operator/main.go index 2953bbda..cd93bb04 100644 --- a/cmd/operator/main.go +++ b/cmd/operator/main.go @@ -90,6 +90,7 @@ func init() { utilruntime.Must(dorisv1.AddToScheme(scheme)) utilruntime.Must(dv1.AddToScheme(scheme)) + //deprecated: //utilruntime.Must(dmsv1.AddToScheme(scheme)) //add foundationdb scheme //utilruntime.Must(v1beta2.AddToScheme(scheme)) diff --git a/config/operator/fdb-operator.yaml b/config/operator/fdb-operator.yaml index 23485fac..7b256f42 100644 --- a/config/operator/fdb-operator.yaml +++ b/config/operator/fdb-operator.yaml @@ -1,3 +1,21 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +# permissions to do leader election. apiVersion: v1 kind: ServiceAccount metadata: diff --git a/doc/examples/disaggregated/cluster/ddc-configmap.yaml b/doc/examples/disaggregated/cluster/ddc-configmap.yaml index bab8211a..b2040522 100644 --- a/doc/examples/disaggregated/cluster/ddc-configmap.yaml +++ b/doc/examples/disaggregated/cluster/ddc-configmap.yaml @@ -1,3 +1,20 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + apiVersion: disaggregated.cluster.doris.com/v1 kind: DorisDisaggregatedCluster metadata: diff --git a/doc/examples/disaggregated/cluster/ddc-pvc.yaml b/doc/examples/disaggregated/cluster/ddc-pvc.yaml index 06ce3929..9f75563b 100644 --- a/doc/examples/disaggregated/cluster/ddc-pvc.yaml +++ b/doc/examples/disaggregated/cluster/ddc-pvc.yaml @@ -1,3 +1,20 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + apiVersion: disaggregated.cluster.doris.com/v1 kind: DorisDisaggregatedCluster metadata: diff --git a/doc/examples/disaggregated/cluster/ddc-sample.yaml b/doc/examples/disaggregated/cluster/ddc-sample.yaml index 9e9aac25..d493cec3 100644 --- a/doc/examples/disaggregated/cluster/ddc-sample.yaml +++ b/doc/examples/disaggregated/cluster/ddc-sample.yaml @@ -1,3 +1,20 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + apiVersion: disaggregated.cluster.doris.com/v1 kind: DorisDisaggregatedCluster metadata: diff --git a/doc/examples/disaggregated/fdb/cluster-single.yaml b/doc/examples/disaggregated/fdb/cluster-single.yaml index 0a94e3ec..1b67869b 100644 --- a/doc/examples/disaggregated/fdb/cluster-single.yaml +++ b/doc/examples/disaggregated/fdb/cluster-single.yaml @@ -1,3 +1,20 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + apiVersion: apps.foundationdb.org/v1beta2 kind: FoundationDBCluster metadata: diff --git a/doc/examples/disaggregated/fdb/cluster.yaml b/doc/examples/disaggregated/fdb/cluster.yaml index 1fecf11d..9831a6ed 100644 --- a/doc/examples/disaggregated/fdb/cluster.yaml +++ b/doc/examples/disaggregated/fdb/cluster.yaml @@ -1,3 +1,20 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + apiVersion: apps.foundationdb.org/v1beta2 kind: FoundationDBCluster metadata: diff --git a/doc/operation/initial_password.md b/doc/operation/initial_password.md new file mode 100644 index 00000000..791125c7 --- /dev/null +++ b/doc/operation/initial_password.md @@ -0,0 +1,155 @@ +# Configuring the Username and Password for the Management Cluster +The management of Doris nodes requires connecting to the live FE nodes via the MySQL protocol using a username and password for operations. Doris implements [a permission management mechanism similar to RBAC](https://doris.apache.org/zh-CN/docs/admin-manual/auth/authentication-and-authorization?_highlight=rbac#doris-%E5%86%85%E7%BD%AE%E7%9A%84%E9%89%B4%E6%9D%83%E6%96%B9%E6%A1%88), and the management of nodes requires the user to have the [Node_priv](https://doris.apache.org/zh-CN/docs/admin-manual/auth/authentication-and-authorization#%E6%9D%83%E9%99%90%E7%B1%BB%E5%9E%8B) permission. By default, Doris Operator deploys and manages the cluster configured with DorisCluster resources using the root user with all permissions in passwordless mode. After adding a password to the root user, it is necessary to explicitly configure the username and password with Node_Priv permission in the DorisCluster resource, so that Doris Operator can perform automated management operations on the cluster. +DorisCluster resources provide two ways to configure the username and password required for managing cluster nodes, including: +- the way of environment variable configuration and the way of using Secret. +- Configuring the username and password for cluster management can be divided into three cases: initializing the root user password during cluster deployment; +- automatically setting a non-root user with management permissions in the root passwordless deployment; setting the root user password after deploying the cluster in root passwordless mode. +## Configuring the Root User Password during Cluster Deployment +Doris supports configuring the root user's password in encrypted form in fe.conf. To configure the root user's password during the first deployment of Doris, follow these steps so that Doris Operator can automatically manage the cluster nodes: +**1. Generate the Root Encrypted Password** +Doris supports [setting the root user's password in the fe.conf](https://doris.apache.org/zh-CN/docs/admin-manual/config/fe-config?_highlight=initial_#initial_root_password) in encrypted form. The password encryption is implemented using two-stage SHA-1 encryption. The code implementation is as follows: +Java Code for Two-Stage SHA-2 Encryption: +```java +import org.apache.commons.codec.digest.DigestUtils; +public static void main( String[] args ) { + //the original password + String a = "123456"; + String b = DigestUtils.sha1Hex(DigestUtils.sha1(a.getBytes())).toUpperCase(); + //output the 2 stage encrypted password. + System.out.println("*"+b); + } +``` +Golang Code for Two-Stage SHA-1 Encryption: +```go +import ( +"crypto/sha1" +"encoding/hex" +"fmt" +"strings" +) + +func main() { + //original password + plan := "123456" + //the first stage encryption. + h := sha1.New() + h.Write([]byte(plan)) + eb := h.Sum(nil) + + //the two stage encryption. + h.Reset() + h.Write(eb) + teb := h.Sum(nil) + dst := hex.EncodeToString(teb) + tes := strings.ToUpper(fmt.Sprintf("%s", dst)) + //output the 2 stage encrypted password. + fmt.Println("*"+tes) +} +``` +Configure the encrypted password into fe.conf according to the requirements of the configuration file format. Then, distribute the configuration file to the k8s cluster in the form of a configmap according to the introduction in [the Cluster Parameter Configuration Section](https://doris.apache.org/zh-CN/docs/install/cluster-deployment/k8s-deploy/install-config-cluster#%E9%9B%86%E7%BE%A4%E5%8F%82%E6%95%B0%E9%85%8D%E7%BD%AE). +**2. Configure the DorisCluster Resource** +After setting the root initialization password in the configuration file, the root password will take effect immediately after the first Doris FE node starts. When other nodes join the cluster, Doris Operator needs to operate using the root username + password. It is necessary to specify the username + password in the deployed DorisCluster resource so that Doris Operator can automatically manage the cluster nodes. +- Using Environment Variables + Configure the username root and password into the ".spec.adminUser.name" and ".spec.adminUser.password" fields in the DorisCluster resource. Doris Operator will automatically convert the following configuration into environment variables for the container to use. The auxiliary services inside the container will use the username and password configured by the environment variables to add themselves to the specified cluster. The configuration format is as follows: + ```yaml + spec: + adminUser: + name: root + password: ${password} + ``` + Here, ${password} is the unencrypted password of root. +- Using Secret: + Doris Operator provides the use of [Basic authentication Secret](https://kubernetes.io/docs/concepts/configuration/secret/#basic-authentication-secret) to specify the username and password of the management node. After the DorisCluster resource is configured to use the required Secret, Doris Operator will automatically mount the Secret to the specified location of the container in the form of a file. The auxiliary services of the container will parse the username and password from the file to automatically add themselves to the specified cluster. The stringData of basic-authentication-secret only contains two fields: username and password. The process of using Secret to configure the management username and password is as follows: + a. Configure the Required Secret + Configure the required Basic authentication Secret according to the following format: + ```yaml + stringData: + username: root + password: ${password} + ``` + Here, ${password} is the unencrypted password set for root. +b. Configure the DorisCluster Resource to be Deployed + Configure the DorisCluster to specify the required Secret in the following format: + ```yaml + spec: + authSecret: ${secretName} + ``` + Here, ${secretName} is the name of the Secret containing the root username and password. +## Automatically Creating Non-Root Management Users and Passwords during Deployment (Recommended) +During the first deployment, do not set the initialization password of root. Instead, set the non-root user and login password through the environment variable or using Secret. The auxiliary services of the Doris container will automatically create the configured user in the database, set the password, and grant the Node_priv permission. Doris Operator will manage the cluster nodes using the automatically created username and password. +- Using Environment Variables: + Configure the DorisCluster resource to be deployed according to the following format: + ```yaml + spec: + adminUser: + name: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + Here, ${DB_ADMIN_USER} is the newly created username, and ${DB_ADMIN_PASSWD} is the password set for the newly created username. +- Using Secret: +a. Configure the Required Secret + Configure the required Basic authentication Secret according to the following format: + ```yaml + stringData: + username: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + Here, ${DB_ADMIN_USER} is the newly created username, and ${DB_ADMIN_PASSWD} is the password set for the newly created username. + Deploy the updated Secret to the k8s cluster by running `kubectl -n ${namespace} apply -f ${secretFileName}.yaml`. Here, ${namespace} is the namespace where the DorisCluster resource needs to be deployed, and ${secretFileName} is the file name of the Secret to be deployed. +b. Configure the DorisCluster Resource Requiring Secret + Update the DorisCluster resource according to the following format: + ```yaml + spec: + authSecret: ${secretName} + ``` + Here, ${secretName} is the name of the deployed Basic authentication Secret. + +:::tip Tip +After deployment, please set the root password. Doris Operator will switch to using the automatically newly created username and password to manage the nodes. Please avoid deleting the automatically created user. +::: +## Setting the Root User Password after Cluster Deployment +After the Doris cluster is deployed and the root user's password is set, it is necessary to configure a user with [Node_priv](https://doris.apache.org/zh-CN/docs/admin-manual/auth/authentication-and-authorization/#%E6%9D%83%E9%99%90%E7%B1%BB%E5%9E%8B) permission into the DorisCluster resource so that Doris Operator can automatically manage the cluster nodes. It is not recommended to use root as this username. Please refer to [the User Creation and Permission Assignment Section](https://doris.apache.org/zh-CN/docs/sql-manual/sql-statements/Account-Management-Statements/CREATE-USER) to create a new user and grant Node_priv permission. After creating the user, specify the new management user and password through the environment variable or Secret method, and configure the corresponding DorisCluster resource. +**1. Create a User with Node_priv Permission** +After connecting to the database using the MySQL protocol, use the following command to create a simple user with only Node_priv permission and set the password. +```shell +CREATE USER '${DB_ADMIN_USER}' IDENTIFIED BY '${DB_ADMIN_PASSWD}'; +``` +Here, ${DB_ADMIN_USER} is the username you hope to create, and ${DB_ADMIN_PASSWD} is the password you hope to set for the newly created user. +**2. Grant Node_priv Permission to the Newly Created User** +After connecting to the database using the MySQL protocol, use the following command to grant Node_priv permission to the newly created user. +```shell +GRANT NODE_PRIV ON *.*.* TO ${DB_ADMIN_USER}; +``` +Here, ${DB_ADMIN_USER} is the newly created username. +For detailed usage of creating users, setting passwords, and granting permissions, please refer to the official document [CREATE-USER](https://doris.apache.org/zh-CN/docs/sql-manual/sql-statements/Account-Management-Statements/CREATE-USER/) section. +**3. Configure DorisCluster** +- Using Environment Variables + Configure the newly created username and password into the ".spec.adminUser.name" and ".spec.adminUser.password" fields in the DorisCluster resource. Doris Operator will automatically convert the following configuration into environment variables. The auxiliary services inside the container will use the username and password configured by the environment variables to add themselves to the specified cluster. The configuration format is as follows: + ```yaml + spec: + adminUser: + name: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + Here, ${DB_ADMIN_USER} is the newly created username, and ${DB_ADIC_PASSWD} is the password set for the newly created user. +- Using Secret + a. Configure the Required Secret + Configure the required Basic authentication Secret according to the following format: + ```yaml + stringData: + username: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + Here, ${DB_ADMIN_USER} is the newly created username, and ${DB_ADMIN_PASSWD} is the password set for the newly created username. + Deploy the configured Secret to the k8s cluster by running kubectl -n ${namespace} apply -f ${secretFileName}.yaml. Here, ${namespace} is the namespace where the DorisCluster resource needs to be deployed, and ${secretFileName} is the file name of the Secret to be deployed. +b. Update the DorisCluster Resource Requiring Secret + Update the DorisCluster resource according to the following format: + ```yaml + spec: + authSecret: ${secretName} + ``` + Here, ${secretName} is the name of the deployed Basic authentication Secret. + +:::tip Tip +After setting the root password and configuring the new username and password for managing nodes after deployment, the existing services will be restarted once in a rolling manner. +::: diff --git a/doc/operation/initial_password_cn.md b/doc/operation/initial_password_cn.md new file mode 100644 index 00000000..4454dcb2 --- /dev/null +++ b/doc/operation/initial_password_cn.md @@ -0,0 +1,157 @@ +# 配置管理集群的用户名密码 +Doris 节点的管理需要通过用户名、密码以 mysql 协议连接活着的 fe 节点进行操作。Doris 实现[类似 RBAC 的权限管理机制](https://doris.apache.org/zh-CN/docs/admin-manual/auth/authentication-and-authorization?_highlight=rbac#doris-%E5%86%85%E7%BD%AE%E7%9A%84%E9%89%B4%E6%9D%83%E6%96%B9%E6%A1%88),节点的管理需要用户拥有 [Node_priv](https://doris.apache.org/zh-CN/docs/admin-manual/auth/authentication-and-authorization#%E6%9D%83%E9%99%90%E7%B1%BB%E5%9E%8B) 权限。Doris Operator 默认使用拥有所有权限的 root 用户无密码模式对 DorisCluster 资源配置的集群进行部署和管理。 root 用户添加密码后,需要在 DorisCluster 资源中显示配置拥有 Node_Priv 权限的用户名和密码,以便 Doris Operator 对集群进行自动化管理操作。 +DorisCluster 资源提供两种方式来配置管理集群节点所需的用户名、密码,包括:环境变量配置的方式,以及使用 [Secret](https://kubernetes.io/docs/concepts/configuration/secret/) 配置的方式。配置集群管理的用户名和密码分为 3 种情况: +- 集群部署需初始化 root 用户密码; +- root 无密码部署下,自动化设置拥有管理权限的非 root 用户; +- 集群 root 无密码模式部署后,设置 root 用户密码。 +## 集群部署配置 root 用户密码 +Doris 支持将 root 的用户以密文的形式配置在 fe.conf 中,在 Doris 首次部署时配置 root 用户的密码,请按照如下步骤操作,以便让 Doris Operator 能够自动管理集群节点: +**1. 构建 root 加密密码** +Doris 支持密文的方式在 [fe 的配置文件](https://doris.apache.org/zh-CN/docs/admin-manual/config/fe-config?_highlight=initial_#initial_root_password)中设置 root 用户的密码,密码的加密方式是采用 2 阶段 SHA-1 加密实现。代码实现如下: +java 代码实现 2 阶段 SHA-2 加密: +```java +import org.apache.commons.codec.digest.DigestUtils; + +public static void main( String[] args ) { + //the original password + String a = "123456"; + String b = DigestUtils.sha1Hex(DigestUtils.sha1(a.getBytes())).toUpperCase(); + //output the 2 stage encrypted password. + System.out.println("*"+b); + } +``` +golang 代码实现 2 阶段 SHA-1 加密: +```go +import ( +"crypto/sha1" +"encoding/hex" +"fmt" +"strings" +) + +func main() { + //original password + plan := "123456" + //the first stage encryption. + h := sha1.New() + h.Write([]byte(plan)) + eb := h.Sum(nil) + + //the two stage encryption. + h.Reset() + h.Write(eb) + teb := h.Sum(nil) + dst := hex.EncodeToString(teb) + tes := strings.ToUpper(fmt.Sprintf("%s", dst)) + //output the 2 stage encrypted password. + fmt.Println("*"+tes) +} +``` +将加密后的密码按照配置文件格式要求配置到 fe.conf 中, 根据[集群参数配置章节](https://doris.apache.org/zh-CN/docs/install/cluster-deployment/k8s-deploy/install-config-cluster#%E9%9B%86%E7%BE%A4%E5%8F%82%E6%95%B0%E9%85%8D%E7%BD%AE)的介绍将配置文件以 configmap 的形式下发到 k8s 集中。 +**2. 构建 DorisCluster 资源** +配置文件设置了 root 初始化密码,Doris fe 第一个节点启动后 root 的密码会立即生效,其他节点加入集群需要 Doris Operator 使用 root 用户名 + 密码的方式来操作。需要在部署的 DorisCluster 资源中指定用户名 + 密码,以便 Doris Operator 自动管理集群节点。 +- 环境变量方式 + 将用户名 root 和密码配置到 DorisCluster 资源中的 ".spec.adminUser.name" 和 ".spec.adminUser.password" 字段,Doris Operator 会自动将下列配置转为容器的环境变量使用,容器内的辅助服务会使用环境变量配置的用户名和密码来添加自身到指定的集群。配置格式如下: + ```yaml + spec: + adminUser: + name: root + password: ${password} + ``` + 其中,${password} 为 root 的非加密密码。 +- Secret 方式 + Doris Operator 提供使用 [Basic authentication Secret](https://kubernetes.io/docs/concepts/configuration/secret/#basic-authentication-secret) 来指定管理节点的用户名和密码,DorisCluster 资源配置需要使用的 Secret 后,Doris Operator 会自动将 Secret 以文件形式挂载到容器指定位置,容器的辅助服务会解析出文件的用户名和密码来自动添加自身到指定集群。basic-authentication-secret 的 stringData 只包含 2 个字段: username 和 password 。使用 Secret 配置管理用户名和密码流程如下: + a. 配置需要使用的 Secret + 按照如下格式配置需要使用的 Basic authentication Secret : + ```yaml + stringData: + username: root + password: ${password} + ``` + 其中 ${password} 为 root 设置的非加密密码。 + 将 Secret 通过 `kubectl -n ${namespace} apply -f ${secretFileName}.yaml` 将更新后的 Secret 部署到 k8s 集群中。其中 ${namespace} 为 DorisCluster 资源需要部署的命名空间,${secretFileName} 为需要部署的 Secret 的文件名称。 + b. 配置需要部署的 DorisCluster 资源 + 配置 DorisCluster 指定需要使用的 Secret 格式如下: + ```yaml + spec: + authSecret: ${secretName} + ``` + 其中,${secretName} 为包含 root 用户名和密码的 Secret 名称。 +## 部署时自动创建非 root 管理用户和密码(推荐) +在首次部署时不设置 root 的初始化密码,通过环境变量或者 Secret 的方式设置非 root 用户和登录密码。 Doris 容器的辅助服务会自动在数据库中创建配置的用户,设置密码和赋予 Node_priv 权限, Doris Operator 会以自动创建的用户名和密码管理集群节点。 +- 环境变量模式 + 按照如下格式配置需要部署的 DorisCluster 资源: + ```yaml + spec: + adminUser: + name: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + 其中,${DB_ADMIN_USER} 为需要新建拥有管理权限的用户名,${DB_ADMIN_PASSWD} 为新建用户的密码。 +- Secret 方式 + a. 配置需要使用的 Secret + 按照如下格式配置需要使用的 Basic authentication Secret : + ```yaml + stringData: + username: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + 其中 ${DB_ADMIN_USER} 为新创建的用户名,${DB_ADMIN_PASSWD} 为新建用户名设置的密码。 + 将 Secret 通过 `kubectl -n ${namespace} apply -f ${secretFileName}.yaml` 将更新后的 Secret 部署到 k8s 集群中。其中 ${namespace} 为 DorisCluster 资源需要部署的命名空间,${secretFileName} 为需要部署的 Secret 的文件名称。 + b. 配置需要使用 Secret 的 DorisCluster 资源 + 按照如下格式更新 DorisCluster 资源: + ```yaml + spec: + authSecret: ${secretName} + ``` + 其中,${secretName} 为部署的 Basic authentication Secret 的名称。 + +:::tip 提示 +- 部署后请设置 root 的密码,Doris Operator 会转为使用自动新建的用户名和密码管理节点,请避免删除自动化创建的用户。 +::: +## 集群部署后设置 root 用户密码 +Doris 集群在部署后设置了 root 用户的密码,需要配置一个拥有 [Node_priv](https://doris.apache.org/zh-CN/docs/admin-manual/auth/authentication-and-authorization/#%E6%9D%83%E9%99%90%E7%B1%BB%E5%9E%8B) 权限的用户到 DorisCluster 资源中,以便 Doris Operator 自动化的管理集群节点。此用户名不建议使用 root , 请参考[用户新建和权限赋值章节](https://doris.apache.org/zh-CN/docs/sql-manual/sql-statements/Account-Management-Statements/CREATE-USER)来创建新用户并赋予 Node_priv 权限。创建用户后,通过环境变量或者 Secret 的方式指定新的管理用户和密码,并配置对应的 DorisCluster 资源。 +1. 新建拥有 Node_priv 权限用户 +使用 mysql 协议连接数据库后,使用如下命令可以创建一个简易的仅拥有 Node_priv 权限的用户并设置密码。 +```shell +CREATE USER '${DB_ADMIN_USER}' IDENTIFIED BY '${DB_ADMIN_PASSWD}'; +``` +其中 ${DB_ADMIN_USER} 为希望创建的用户名,${DB_ADMIN_PASSWD} 为希望为新建用户设置的密码。 +2. 给新建用户赋予 Node_priv 权限 +使用 mysql 协议连接数据库后,使用如下命令赋予新建用户 Node_priv 权限。 +```shell +GRANT NODE_PRIV ON *.*.* TO ${DB_ADMIN_USER}; +``` +其中,${DB_ADMIN_USER} 为新创建的用户名。 +新建用户,设置密码,以及赋予权限详细使用,请参考官方文档 [CREATE-USER](https://doris.apache.org/zh-CN/docs/sql-manual/sql-statements/Account-Management-Statements/CREATE-USER/) 部分。 +3. 配置 DorisCluster 资源 +- 环境变量方式 + 将新创建的用户名和密码配置到 DorisCluster 资源中的 ".spec.adminUser.name" 和 ".spec.adminUser.password" 字段,Doris Operator 会自动将下列配置转为容器的环境变量。容器内的辅助服务会使用环境变量配置的用户名和密码来添加自身到指定的集群。配置格式如下: + ```yaml + spec: + adminUser: + name: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + 其中,${DB_ADMIN_USER} 为新建的用户名,${DB_ADMIN_PASSWD} 为新建用户设置的密码。 +- Secret 方式 +a. 配置需要使用的 Secret + 按照如下格式配置需要使用的 Basic authentication Secret : + ```yaml + stringData: + username: ${DB_ADMIN_USER} + password: ${DB_ADMIN_PASSWD} + ``` + 其中 ${DB_ADMIN_USER} 为新创建的用户名,${DB_ADMIN_PASSWD} 为新建用户名设置的密码。 + 将 Secret 通过 `kubectl -n ${namespace} apply -f ${secretFileName}.yaml` 将配置好的 Secret 部署到 k8s 集群中。其中 ${namespace} 为 DorisCluster 资源需要部署的命名空间,${secretFileName} 为需要部署的 Secret 的文件名称。 +b. 更新需要使用 Secret 的 DorisCluster 资源 + 按照如下格式更新 DorisCluster 资源: + ```yaml + spec: + authSecret: ${secretName} + ``` + 其中,${secretName} 为部署的 Basic authentication Secret 的名称。 + +:::tip 提示 +- 部署后设置 root 密码,并配置新的拥有管理节点的用户名和密码后,会引起存量服务滚动重启一次。 +::: diff --git a/doc/operation/scale_up_down.md b/doc/operation/scale_up_down.md index e69de29b..c5105309 100644 --- a/doc/operation/scale_up_down.md +++ b/doc/operation/scale_up_down.md @@ -0,0 +1,49 @@ +# Doris Scaling +The scaling of Doris on K8S should update the replicas field of DorisCluster resource. +## Check DorisCluster Resource +The Doris have installed into default namespace. +Using the command `kubectl -n {namespace} get doriscluter` for getting the name of the deployed DorisCluster resource. +```shell +kubectl -n default get doriscluster +NAME FESTATUS BESTATUS CNSTATUS BROKERSTATUS +doriscluster-sample available available +``` +## scaling +use kubectl to modify `spec.feSpec.replicas` to scaling fe component of doris. +### FE scaling +**check fe replicas** +```shell +kubectl -n default get pods -l "app.kubernetes.io/component=fe" +NAME READY STATUS RESTARTS AGE +doriscluster-sample-fe-0 1/1 Running 0 10d +``` +**modify fe replicas** +```shell +kubectl -n default patch doriscluster doriscluster-sample --type merge --patch '{"spec":{"feSpec":{"replicas":3}}}' +``` +**check result** +```shell +NAME READY STATUS RESTARTS AGE +doriscluster-sample-fe-2 1/1 Running 0 9m37s +doriscluster-sample-fe-1 1/1 Running 0 9m37s +doriscluster-sample-fe-0 1/1 Running 0 8m49s +``` +### BE scaling +**check be replicas** +```shell +kubectl -n default get pods -l "app.kubernetes.io/component=be" +NAME READY STATUS RESTARTS AGE +doriscluster-sample-be-0 1/1 Running 0 3d2h +``` +**modify be replicas** +```shell + kubectl -n default patch doriscluster doriscluster-sample --type merge --patch '{"spec":{"beSpec":{"replicas":3}}}' +``` +**check result** +```shell + kubectl -n default get pods -l "app.kubernetes.io/component=be" +NAME READY STATUS RESTARTS AGE +doriscluster-sample-be-0 1/1 Running 0 3d2h +doriscluster-sample-be-2 1/1 Running 0 12m +doriscluster-sample-be-1 1/1 Running 0 12m +``` diff --git a/doc/operation/scale_up_down_cn.md b/doc/operation/scale_up_down_cn.md index 5fd5d77d..863b316b 100644 --- a/doc/operation/scale_up_down_cn.md +++ b/doc/operation/scale_up_down_cn.md @@ -1,5 +1,5 @@ # Doris扩缩容 -Doris在K8S之上的扩缩容可通过修改 DorisCluster 资源对应组件的 replicas 字段来实现。修改可直接编辑对应的资源,也可通过命令的方式。 +Doris在 K8S 之上的扩缩容可通过修改 DorisCluster 资源对应组件的 replicas 字段来实现。修改可直接编辑对应的资源,也可通过重新下发资源。 ## 获取 DorisCluster 资源 使用命令 `kubectl -n {namespace} get doriscluster` 获取已部署 DorisCluster 资源的名称. diff --git a/hack/boilerplate.go.txt b/hack/boilerplate.go.txt index 65b86227..6e778edd 100644 --- a/hack/boilerplate.go.txt +++ b/hack/boilerplate.go.txt @@ -1,15 +1,16 @@ -/* -Copyright 2023. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ \ No newline at end of file +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. \ No newline at end of file diff --git a/hack/kube_codegen.sh b/hack/kube_codegen.sh index e700ad2e..b9969994 100755 --- a/hack/kube_codegen.sh +++ b/hack/kube_codegen.sh @@ -1,5 +1,22 @@ #!/usr/bin/env bash +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# # Copyright 2023 The Kubernetes Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/hack/tools.go b/hack/tools.go index 8f55b833..68b3d2fb 100644 --- a/hack/tools.go +++ b/hack/tools.go @@ -6,7 +6,7 @@ // "License"); you may not use this file except in compliance // with the License. You may obtain a copy of the License at // -// http://www.apache.org/licenses/LICENSE-3.0 +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, // software distributed under the License is distributed on an diff --git a/pkg/common/utils/certificate/certificate_test.go b/pkg/common/utils/certificate/certificate_test.go index 05e2d91e..60b5955c 100644 --- a/pkg/common/utils/certificate/certificate_test.go +++ b/pkg/common/utils/certificate/certificate_test.go @@ -1,3 +1,19 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. package certificate import ( diff --git a/pkg/common/utils/certificate/secret_test.go b/pkg/common/utils/certificate/secret_test.go index 1725e1f4..6623cf03 100644 --- a/pkg/common/utils/certificate/secret_test.go +++ b/pkg/common/utils/certificate/secret_test.go @@ -1,3 +1,19 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. package certificate import ( diff --git a/pkg/common/utils/hash/hash_test.go b/pkg/common/utils/hash/hash_test.go index 415b8ea0..a5a456be 100644 --- a/pkg/common/utils/hash/hash_test.go +++ b/pkg/common/utils/hash/hash_test.go @@ -1,3 +1,19 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. package hash import ( diff --git a/pkg/common/utils/k8s/client_test.go b/pkg/common/utils/k8s/client_test.go index 6467de26..ab62cbd4 100644 --- a/pkg/common/utils/k8s/client_test.go +++ b/pkg/common/utils/k8s/client_test.go @@ -1,3 +1,19 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. package k8s import ( diff --git a/pkg/common/utils/metadata/labels_test.go b/pkg/common/utils/metadata/labels_test.go index 5c047418..6564818e 100644 --- a/pkg/common/utils/metadata/labels_test.go +++ b/pkg/common/utils/metadata/labels_test.go @@ -1,3 +1,19 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. package metadata import ( diff --git a/pkg/common/utils/mysql/fake_mysql.go b/pkg/common/utils/mysql/fake_mysql.go index 360dc6ab..a0c04266 100644 --- a/pkg/common/utils/mysql/fake_mysql.go +++ b/pkg/common/utils/mysql/fake_mysql.go @@ -1,3 +1,19 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. package mysql import ( diff --git a/pkg/common/utils/resource/autoscaler_test.go b/pkg/common/utils/resource/autoscaler_test.go index da456822..90412574 100644 --- a/pkg/common/utils/resource/autoscaler_test.go +++ b/pkg/common/utils/resource/autoscaler_test.go @@ -1,3 +1,19 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. package resource import ( diff --git a/pkg/common/utils/resource/configmap_test.go b/pkg/common/utils/resource/configmap_test.go index 5fb1907e..80ec9e92 100644 --- a/pkg/common/utils/resource/configmap_test.go +++ b/pkg/common/utils/resource/configmap_test.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package resource import ( diff --git a/pkg/common/utils/resource/convert_test.go b/pkg/common/utils/resource/convert_test.go index b537c953..99a0e09a 100644 --- a/pkg/common/utils/resource/convert_test.go +++ b/pkg/common/utils/resource/convert_test.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package resource import "testing" diff --git a/pkg/common/utils/resource/persistent_volume_claim_test.go b/pkg/common/utils/resource/persistent_volume_claim_test.go index 7ca5a91c..6226a4ad 100644 --- a/pkg/common/utils/resource/persistent_volume_claim_test.go +++ b/pkg/common/utils/resource/persistent_volume_claim_test.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package resource import ( diff --git a/pkg/common/utils/resource/pod_test.go b/pkg/common/utils/resource/pod_test.go index 61484a17..bc5883c5 100644 --- a/pkg/common/utils/resource/pod_test.go +++ b/pkg/common/utils/resource/pod_test.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package resource import "testing" diff --git a/pkg/common/utils/resource/secret.go b/pkg/common/utils/resource/secret.go index 8f49008d..2c16beb3 100644 --- a/pkg/common/utils/resource/secret.go +++ b/pkg/common/utils/resource/secret.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package resource import corev1 "k8s.io/api/core/v1" diff --git a/pkg/controller/sub_controller/disaggregated_cluster/disaggregated_fe/pvc.go b/pkg/controller/sub_controller/disaggregated_cluster/disaggregated_fe/pvc.go index 14a287a5..81f30116 100644 --- a/pkg/controller/sub_controller/disaggregated_cluster/disaggregated_fe/pvc.go +++ b/pkg/controller/sub_controller/disaggregated_cluster/disaggregated_fe/pvc.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package disaggregated_fe import ( diff --git a/pkg/controller/sub_controller/disaggregated_cluster/metaservice/controller.go b/pkg/controller/sub_controller/disaggregated_cluster/metaservice/controller.go index c00e766a..2e21a24c 100644 --- a/pkg/controller/sub_controller/disaggregated_cluster/metaservice/controller.go +++ b/pkg/controller/sub_controller/disaggregated_cluster/metaservice/controller.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package metaservice import ( diff --git a/pkg/controller/sub_controller/disaggregated_cluster/metaservice/service.go b/pkg/controller/sub_controller/disaggregated_cluster/metaservice/service.go index cf87b080..e01feea7 100644 --- a/pkg/controller/sub_controller/disaggregated_cluster/metaservice/service.go +++ b/pkg/controller/sub_controller/disaggregated_cluster/metaservice/service.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package metaservice import ( diff --git a/pkg/controller/sub_controller/disaggregated_cluster/metaservice/statefulset.go b/pkg/controller/sub_controller/disaggregated_cluster/metaservice/statefulset.go index 09cca0dc..a33cc44c 100644 --- a/pkg/controller/sub_controller/disaggregated_cluster/metaservice/statefulset.go +++ b/pkg/controller/sub_controller/disaggregated_cluster/metaservice/statefulset.go @@ -1,3 +1,20 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + package metaservice import (