kythe.io@v0.0.68-0.20240422202219-7225dbc01741/kythe/release/Dockerfile (about) 1 # Copyright 2014 The Kythe Authors. All rights reserved. 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 FROM google/kythe-base 16 17 # Usage: see kythe.sh 18 # Volumes: 19 # /repo -- Input repository for extraction/indexing 20 # /compilations -- Output directory for extracted compilations 21 # /graphstore -- Output directory for indexing 22 # /root/.m2 -- Maven cache 23 24 ################################## <EXTRACTORS> 25 # Root of repository from which to extract compilations 26 VOLUME /repo 27 # Output directory for compilations 28 VOLUME /compilations 29 # Allow Maven cache to be shared 30 VOLUME /root/.m2 31 32 # Maven Extractor 33 ADD kythe/java/com/google/devtools/kythe/extractors/java/standalone/javac_extractor_deploy.jar /kythe/bin/javac_extractor_deploy.jar 34 ADD kythe/release/maven_extractor.sh /kythe/bin/maven_extractor 35 36 # TODO(fromberger): Add new Go extractor. 37 38 RUN chmod +x /kythe/bin/*_extractor 39 ################################## </EXTRACTORS> 40 41 ################################## <INDEXERS> 42 # C++ 43 ADD kythe/cxx/indexer/cxx/indexer /kythe/bin/c++_indexer.bin 44 RUN echo 'exec /kythe/bin/c++_indexer.bin --flush_after_each_entry --ignore_unimplemented --noindex_template_instantiations "$@"' > /kythe/bin/c++_indexer 45 46 # Java 47 ADD kythe/java/com/google/devtools/kythe/analyzers/java/indexer_deploy.jar /kythe/bin/java_indexer_deploy.jar 48 RUN echo 'exec java -jar /kythe/bin/java_indexer_deploy.jar "$@"' > /kythe/bin/java_indexer 49 50 # Go 51 ADD kythe/go/indexer/cmd/go_indexer/go_indexer /kythe/bin/go_indexer 52 53 RUN chmod +x /kythe/bin/*_indexer 54 ################################## </INDEXERS> 55 56 ################################## <STORAGE> 57 VOLUME /graphstore 58 59 ADD kythe/go/storage/tools/write_entries /kythe/bin/ 60 ADD kythe/go/platform/tools/dedup_stream /kythe/bin/ 61 62 ADD kythe/go/storage/tools/directory_indexer /kythe/bin/index_repository 63 ################################## </STORAGE> 64 65 ADD kythe/release/kythe.sh /kythe/bin/ 66 RUN chmod +x /kythe/bin/*.sh 67 68 ENTRYPOINT ["kythe.sh"] 69 CMD []