diff --git a/Makefile b/Makefile index 0251cc0..b7d113d 100755 --- a/Makefile +++ b/Makefile @@ -177,7 +177,7 @@ tidy-lint: .PHONY: check-copyright-lint check-copyright-lint: @echo "Checking file for copyright statement..." - @./tools/check_copyright + @./tools/license.sh check @echo "Copyright check completed successfully" ### Helper Installations ### @@ -262,5 +262,5 @@ clean: .PHONY: add-copyright add-copyright: @echo "Adding copyright license to necessary files..." - @./tools/add_license.sh + @./tools/license.sh add @echo "Copyright license additions completed successfully" diff --git a/client/src/app/app.component.css b/client/src/app/app.component.css index 9d58958..36918e9 100644 --- a/client/src/app/app.component.css +++ b/client/src/app/app.component.css @@ -1,17 +1,17 @@ -/* -# 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 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. +*/ + .main-container { display: flex; flex-direction: column; diff --git a/client/src/app/ctl/baremetal/baremetal.component.spec.ts b/client/src/app/ctl/baremetal/baremetal.component.spec.ts index e5a8fa3..6877389 100644 --- a/client/src/app/ctl/baremetal/baremetal.component.spec.ts +++ b/client/src/app/ctl/baremetal/baremetal.component.spec.ts @@ -1,17 +1,17 @@ -/* -# 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 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. +*/ + import {async, ComponentFixture, TestBed} from '@angular/core/testing'; import {BaremetalComponent} from './baremetal.component'; import {MatButtonModule} from '@angular/material/button'; diff --git a/tools/add_license.sh b/tools/add_license.sh deleted file mode 100755 index 7aae2b8..0000000 --- a/tools/add_license.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/bash - -# 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. - -set -e - -# Find all files of given format and add license if missing -add_license() { - ext=$1 - template=$2 - # skipping license for testdata and manifests folders - FILES=$(find -L . -name "*.${ext}" | grep -v "testdata" | grep -v "manifests") - - for each in $FILES - do - if ! grep -Eq 'Apache License|License-Identifier: Apache' $each - then - echo "Adding license header to $each" - cat tools/${template} $each >$each.new - mv $each.new $each - fi - done -} - -add_license_to_bash() { - template=$1 - FILES=$(find -L . -name "*.sh" ) - NUM_OF_LINES=$(< "tools/$template" wc -l) - - for each in $FILES - do - if ! grep -Eq 'Apache License|License-Identifier: Apache' $each - then - if head -1 $each | grep '^#!' > /dev/null - then - echo "Adding license header to $each" - head -n 1 $each >>$each.new - head -n $NUM_OF_LINES tools/$template >>$each.new - tail -n+2 $each >>$each.new - mv $each.new $each - fi - fi - done -} - -add_license 'go' 'license_go.txt' -add_license 'yaml' 'license_yaml.txt' -add_license 'yml' 'license_yaml.txt' -add_license_to_bash 'license_bash.txt' diff --git a/tools/check_copyright b/tools/check_copyright deleted file mode 100755 index 4ea3588..0000000 --- a/tools/check_copyright +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -# 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. - -declare FILES_MISSING_COPYRIGHT=() - -# Find all files of given format and add license if missing -FILES=$(find -L . -type f \( -iname \*.go -o -iname \*.yaml -o -iname \*.yml -o -iname \*.sh -o -iname \*.ts -o -iname \*.css \) \ - -not -path "./etc" \ - -not -path "./client/dist/*" \ - -not -path "./client/node_modules/*" \ - -not -path "./tools/*node*" \ - | grep -v "testdata" \ - | grep -v "manifests") - -for each in $FILES -do - if ! grep -Eq 'Apache License|License-Identifier: Apache' $each - then - FILES_MISSING_COPYRIGHT+=($each) - fi -done - -if [ ${#FILES_MISSING_COPYRIGHT[@]} -gt 0 ] -then - printf "Copyright header missing for: %s\n" "${FILES_MISSING_COPYRIGHT[@]}" - echo "please run make add-copyright" - exit 1 -else - echo "no file with missing copyright header detected, make target completed successfully" -fi - diff --git a/tools/license.sh b/tools/license.sh new file mode 100755 index 0000000..ed91b15 --- /dev/null +++ b/tools/license.sh @@ -0,0 +1,104 @@ +#!/bin/bash + +# 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. + +declare FILES_MISSING_COPYRIGHT=() + +# Get the files of interst +getFiles() { + FILES=$(find -L . -type f \( -iname \*.go -o -iname \*.yaml -o -iname \*.yml -o -iname \*.sh -o -iname \*.ts -o -iname \*.css \) \ + -not -path "./etc" \ + -not -path "./client/dist/*" \ + -not -path "./client/node_modules/*" \ + -not -path "./tools/*node*" \ + | grep -v "testdata" \ + | grep -v "manifests") + + for each in $FILES + do + if ! grep -Eq 'Apache License|License-Identifier: Apache' $each + then + FILES_MISSING_COPYRIGHT+=($each) + fi + done +} + +# Find all files we care about and add licenses if needed +addLicense() { + getFiles + + if [ ${#FILES_MISSING_COPYRIGHT[@]} -gt 0 ] + then + for each in $FILES + do + if ! grep -Eq 'Apache License|License-Identifier: Apache' $each + then + echo "Adding license header to $each" + filename=$(basename -- "$each") + case ${filename##*.} in + css) + cat tools/license_html.txt $each >$each.new + ;; + go) + cat tools/license_go.txt $each >$each.new + ;; + sh) + head -n 1 $each >>$each.new + NUM_OF_LINES=$(< "tools/license_bash.txt" wc -l) + head -n $NUM_OF_LINES tools/license_bash.txt >>$each.new + tail -n+2 $each >>$each.new + ;; + ts) + cat tools/license_html.txt $each >$each.new + ;; + yaml) + cat tools/license_yaml.txt $each >$each.new + ;; + yal) + cat tools/license_yaml.txt $each >$each.new + ;; + esac + mv $each.new $each + fi + done + else + echo "no file with missing copyright header detected, make target completed successfully" + fi +} + +# Find all files we care about and check if the license is there +checkLicense() { + getFiles + + if [ ${#FILES_MISSING_COPYRIGHT[@]} -gt 0 ] + then + printf "Copyright header missing for: %s\n" "${FILES_MISSING_COPYRIGHT[@]}" + echo "please run make add-copyright" + exit 1 + else + echo "no file with missing copyright header detected, make target completed successfully" + fi +} + +case ${1} in +add) + addLicense + ;; +check) + checkLicense + ;; +*) + echo "usage: ${0} { add | check }" + exit 1 + ;; +esac \ No newline at end of file diff --git a/tools/license_html.txt b/tools/license_html.txt new file mode 100755 index 0000000..76a0870 --- /dev/null +++ b/tools/license_html.txt @@ -0,0 +1,14 @@ +/* +# 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. +*/ +