chore: add NOTICE file and ASF header (#1491)

## Rationale
Prepare for releasing v2.0.0 .

## Detailed Changes
* Add NOTICE file.
* Add ASF license header.

## Test Plan
CI.
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index e4d0f5a..6bf0502 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -29,6 +29,7 @@
       - 'integration_tests/**'
       - 'Cargo.toml'
       - '.github/workflows/ci.yml'
+      - 'licenserc.toml'
   pull_request:
     paths:
       - 'src/**'
diff --git a/DISCLAIMER b/DISCLAIMER
new file mode 100644
index 0000000..e38e6f6
--- /dev/null
+++ b/DISCLAIMER
@@ -0,0 +1,10 @@
+Apache HoraeDB (incubating) is an effort undergoing incubation at the Apache
+Software Foundation (ASF), sponsored by the Apache Incubator PMC.
+
+Incubation is required of all newly accepted projects until a further review
+indicates that the infrastructure, communications, and decision making process
+have stabilized in a manner consistent with other successful ASF projects.
+
+While incubation status is not necessarily a reflection of the completeness
+or stability of the code, it does indicate that the project has yet to be
+fully endorsed by the ASF.
diff --git a/Makefile b/Makefile
index 32d695e..9d4bcb4 100644
--- a/Makefile
+++ b/Makefile
@@ -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.
+
 SHELL = /bin/bash
 
 DIR=$(shell pwd)
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000..cd5de63
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,5 @@
+Apache HoraeDB (Incubating)
+Copyright 2024 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
diff --git a/horaemeta/Makefile b/horaemeta/Makefile
index 2eed421..b2a8e55 100644
--- a/horaemeta/Makefile
+++ b/horaemeta/Makefile
@@ -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.
+
 GO_TOOLS_BIN_PATH := $(shell pwd)/.tools/bin
 PATH := $(GO_TOOLS_BIN_PATH):$(PATH)
 SHELL := env PATH='$(PATH)' GOBIN='$(GO_TOOLS_BIN_PATH)' $(shell which bash)
diff --git a/integration_tests/Makefile b/integration_tests/Makefile
index 86aeabc..e5f94e0 100644
--- a/integration_tests/Makefile
+++ b/integration_tests/Makefile
@@ -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.
+
 MODE ?= debug
 ROOT = $(shell pwd)
 HORAEDB_DATA_DIR = /tmp/horaedb
diff --git a/integration_tests/sdk/go/alteraddcolumn.go b/integration_tests/sdk/go/alteraddcolumn.go
index bbe6c44..6e97477 100644
--- a/integration_tests/sdk/go/alteraddcolumn.go
+++ b/integration_tests/sdk/go/alteraddcolumn.go
@@ -1,3 +1,22 @@
+/*
+ * 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 main
 
 import (
diff --git a/integration_tests/sdk/go/autocreatetable.go b/integration_tests/sdk/go/autocreatetable.go
index ce6c3db..6c113c8 100644
--- a/integration_tests/sdk/go/autocreatetable.go
+++ b/integration_tests/sdk/go/autocreatetable.go
@@ -1,3 +1,22 @@
+/*
+ * 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 main
 
 import (
diff --git a/integration_tests/sdk/go/issue-779.go b/integration_tests/sdk/go/issue-779.go
index f7c0f39..5c8b989 100644
--- a/integration_tests/sdk/go/issue-779.go
+++ b/integration_tests/sdk/go/issue-779.go
@@ -1,3 +1,22 @@
+/*
+ * 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 main
 
 import (
diff --git a/integration_tests/sdk/go/main.go b/integration_tests/sdk/go/main.go
index 7f54188..e4b4d75 100644
--- a/integration_tests/sdk/go/main.go
+++ b/integration_tests/sdk/go/main.go
@@ -1,3 +1,22 @@
+/*
+ * 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 main
 
 import (
diff --git a/integration_tests/sdk/go/util.go b/integration_tests/sdk/go/util.go
index 8840f4e..17a8e8f 100644
--- a/integration_tests/sdk/go/util.go
+++ b/integration_tests/sdk/go/util.go
@@ -1,3 +1,22 @@
+/*
+ * 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 main
 
 import (
diff --git a/licenserc.toml b/licenserc.toml
index 1b333ad..23ab938 100644
--- a/licenserc.toml
+++ b/licenserc.toml
@@ -18,7 +18,16 @@
 headerPath = "Apache-2.0-ASF.txt"
 
 includes = [
+    "*.go",
     "*.rs",
     "*.toml",
-    "*.yml"
-]
\ No newline at end of file
+    "*.yml",
+    "Makefile",
+]
+
+excludes = [
+    # Derived
+    "horaemeta/server/coordinator/scheduler/nodepicker/hash/consistent_uniform_test.go",
+    "horaemeta/server/coordinator/scheduler/nodepicker/hash/consistent_uniform.go",
+    "horaemeta/server/service/http/route.go"
+]