flink/flink.spec
2023-09-27 14:45:38 +08:00

79 lines
3.3 KiB
RPMSpec

%define __jar_repack %{nil}
%global debug_package %{nil}
# Use local caches compile
%global compile_for_local 0
%global with_debug 0
%global with_tests 0
Name: flink
Version: 1.17.1
Release: 1
Summary: Stateful Computations over Data Streams
License: Apache License v2.0
URL: https://github.com/apache/%{name}
Source0: https://github.com/apache/%{name}/archive/release-%{version}.tar.gz
Source2: https://packages.confluent.io/maven/io/confluent/kafka-schema-registry-client/7.2.2/kafka-schema-registry-client-7.2.2.jar
Source3: https://packages.confluent.io/maven/io/confluent/kafka-avro-serializer/7.2.2/kafka-avro-serializer-7.2.2.jar
Source4: https://packages.confluent.io/maven/io/confluent/kafka-schema-serializer/7.2.2/kafka-schema-serializer-7.2.2.jar
Source5: https://packages.confluent.io/maven/org/apache/kafka/kafka-clients/7.2.2-ccs/kafka-clients-7.2.2-ccs.jar
Source6: npm-8.1.2.tar.gz
Patch0: 0001-add-npm.hw-repo.patch
Patch1: 0002-fix-compilation-failure.patch
Patch2: 0003-Skip-flink-avro-confluent-registry-test.patch
BuildRequires: java-1.8.0-openjdk-devel maven npm
Requires: java-1.8.0-openjdk
%description
Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. Flink has been designed to run in all common cluster environments, perform computations at in-memory speed and at any scale.
%prep
%autosetup -p1 -n %{name}-release-%{version}
mvn install:install-file -DgroupId=io.confluent -DartifactId=kafka-schema-registry-client -Dversion=7.2.2 -Dpackaging=jar -Dfile=%{SOURCE2}
mvn install:install-file -DgroupId=io.confluent -DartifactId=kafka-avro-serializer -Dversion=7.2.2 -Dpackaging=jar -Dfile=%{SOURCE3}
mvn install:install-file -DgroupId=io.confluent -DartifactId=kafka-schema-serializer -Dversion=7.2.2 -Dpackaging=jar -Dfile=%{SOURCE4}
mvn install:install-file -DgroupId=org.apache.kafka -DartifactId=kafka-clients -Dversion=7.2.2-ccs -Dpackaging=jar -Dfile=%{SOURCE5}
mkdir -p ${HOME}/.m2/repository/com/github/eirslett/npm/8.1.2/
cp %{SOURCE6} ${HOME}/.m2/repository/com/github/eirslett/npm/8.1.2/
%build
npm config set registry https://repo.huaweicloud.com/repository/npm/
mvn clean install -DskipTests -Dfast -rf :flink-runtime-web
%install
mkdir -p %{buildroot}/opt/
cp -rf ../%{name}-release-%{version}/flink-dist/target/%{name}-%{version}-bin/%{name}-%{version} %{buildroot}/opt/apache-%{name}-%{version}
find %{buildroot}/opt/apache-%{name}-%{version}/ -type f -name '*.py' | xargs -i sed -i 's/\#!\/usr\/bin\/env python$/\#!\/usr\/bin\/python3/' {}
%files
/opt/apache-%{name}-%{version}
%doc README.md
%license LICENSE
%changelog
* Wed Sep 27 2023 xiexing <xiexing4@hisilicon.com> - 1.17.1-1
- update version to 1.17.1
* Wed Jan 05 2022 weidong <weidong@uniontech.com> - 1.12.7-2
- Fix compilation failure.
* Fri Dec 17 2021 weidong <weidong@uniontech.com> - 1.12.7-1
- Update version.
* Wed Jul 21 2021 zhangjiapeng <zhangjiapeng@huawei.com> - 1.12.0-4
- Fix compilation failure.
* Wed Dec 23 2020 weidong <weidong@uniontech.com> - 1.12.0-3
- Add npm.huawei repo.
* Thu Dec 17 2020 weidong <weidong@uniontech.com> - 1.12.0-2
- Fix compilation issues.
* Mon Dec 14 2020 weidong <weidong@uniontech.com> - 1.12.0-1
- Initial package.