This is an automated email from the ASF dual-hosted git repository.

jamesfredley pushed a commit to branch add-licence-header-css-js
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit 04a7596dc21247b3e3d99f8c91755480736c9cc1
Author: James Fredley <[email protected]>
AuthorDate: Thu Apr 24 17:44:17 2025 -0400

    add add-license-css script
---
 etc/bin/add-license-css.groovy | 60 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/etc/bin/add-license-css.groovy b/etc/bin/add-license-css.groovy
new file mode 100644
index 0000000000..d394fd5883
--- /dev/null
+++ b/etc/bin/add-license-css.groovy
@@ -0,0 +1,60 @@
+#!/usr/bin/env groovy
+/*
+ *  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
+ *
+ *    https://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 java.nio.file.*
+
+def ASF_MARKER = "Licensed to the Apache Software Foundation (ASF) under one"
+def HEADER = '''/*
+ *  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
+ *
+ *    https://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.
+ */
+
+'''
+
+def root = Paths.get(".").toRealPath()
+
+Files.walk(root)
+        .filter { path -> Files.isRegularFile(path) && 
path.toString().endsWith(".css") }
+        .each { path ->
+            def text = path.toFile().getText("UTF-8")
+            if (!text.contains(ASF_MARKER)) {
+                println "📄 Adding ASF header to ${path}"
+                // Prepend header + existing content
+                path.toFile().withWriter("UTF-8") { writer ->
+                    writer << HEADER
+                    writer << text
+                }
+            }
+        }
+
+println "✅ Done."

Reply via email to